【问题标题】:Codeigniter 2 model does not recognize db objectCodeigniter 2 模型无法识别 db 对象
【发布时间】:2012-06-26 17:39:17
【问题描述】:

我之前使用过 Codeigniter 1.7,现在我已经升级到 Codeigniter 2。我正在尝试编写一个非常简单的模型:

<?php
class Test extends CI_Model{

 function __construct(){
  parent::__construct();
 }

 function test(){
  $this->db->orderby ( 'updateDate', 'desc' );
  $this->db->where ( 'logicalDelete', 0 );
  $rs = $this->db->get ( 'act_activity_vw' );

  if (! $rs) {
   throw new DatabaseException ();
  }

  return $rs->result ();
 } 
} 

我有一个简单的控制器来调用它。但是当我尝试运行它时,出现以下错误:

<b>Fatal error</b>:  Call to a member function orderby() on a non-object in <b>C:\xampp\htdocs\API\application\models\test.php</b> on line <b>9</b><br />

它似乎无法将 'db' 识别为对象成员。

我做错了吗?

【问题讨论】:

  • 你试过用 order_by 代替 orderby 吗?
  • 你的流程是错误的,应该首先在 where 条件下排序,然后使用 order_by 这是正确的
  • 是的,这是与之前版本的另一个变化。
  • @raheel : 与活动记录无关。

标签: php codeigniter codeigniter-2


【解决方案1】:

您需要在 CodeIgniter 系统中加载数据库。您可以通过自动加载或在类的构造函数中加载它来做到这一点。

http://codeigniter.com/user_guide/database/connecting.html

我认为这有你需要的一切。

【讨论】:

  • 谢谢,完全忘记了。
猜你喜欢
  • 1970-01-01
  • 2021-04-01
  • 1970-01-01
  • 2018-08-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-11-04
  • 1970-01-01
相关资源
最近更新 更多