调用
时出现错误HTTP 500$this->load->model('cart/products', 'Products');
我的文件夹结构是Applications / Models / cart / products.php
不确定是否可以在Code Igniter的Models文件夹中创建子文件夹?
答案 0 :(得分:1)
是的,你可以
首先加载模型
$this->load->model('cart/products');
然后像这样调用模型中的方法
$result = $this->products->get_product($id);
这是我刚刚在我的wamp中制作的例子(也应该在linux下工作)
my_controller.php
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class my_controller extends CI_Controller {
public function products()
{
$this->load->model("folder/my_model");
$result = $this->my_model->get_product(9571);
print_r($result);
}
}
/* End of file my_controller.php */
/* Location: ./application/controllers/my_controller.php */
然后在类似
的模型中创建了一个文件夹
my_model.php
<?php
class my_model extends CI_Model
{
public function get_product($id)
{
$q_str = "SELECT * from products WHERE products.id = ".$id;
$q = $this->db->query($q_str);
return $q->result();
}
}
?>
干杯,
答案 1 :(得分:0)
你可以试试这个,它适合我。
$this->load->model('cart/products');
即尝试删除第二个参数。我不确定这是你收到错误的原因,但是当你修复时尝试更简单的方法并没有什么坏处。
然后您可以直接在代码中使用“产品”模型。像这样
$this->products->doSomething();
希望有所帮助:)
答案 2 :(得分:0)
我认为你应该以大写字母开头模型文件:
products.php to Products.php
...然后使用以下声明:
$this->load->model('cart/products');
答案 3 :(得分:0)
先加载模型:
$this->load->model('cart/products');
然后调用您的模型和方法:
$this->products->yourFunction();
注意:确保您的模型类名称为“产品”
答案 4 :(得分:-1)
应为$this->load->model('cart/Products_model', 'Products');
答案 5 :(得分:-1)
1)CI也支持模型下的文件夹,因此不是问题。
2)确保模型中的类名也是“产品”。文件名和类名必须相同。
3)模型中的代码也可能存在问题。要调试它,只需从模型中删除所有代码,然后保留类定义并检查它是否有效。