0

调用时收到错误 HTTP 500

$this->load->model('cart/products', 'Products');

我的文件夹结构是 Applications/Models/cart/products.php

不确定是否可以在 Code Igniter 的 Models 文件夹中创建子文件夹?

4

6 回答 6

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 代码

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();            
        }

}


?>

干杯,

于 2015-05-06T12:33:43.407 回答
0

你可以试试这个,它对我有用。

$this->load->model('cart/products');

即尝试删除第二个参数。我不确定这是否是您收到错误的原因,但在修复时尝试更简单的方法并没有什么坏处。

然后您可以直接在代码中使用“产品”模型。像这样

$this->products->doSomething();

希望能帮助到你 :)

于 2013-07-15T13:53:06.607 回答
0

首先加载模型:

$this->load->model('cart/products');

然后调用您的模型和方法:

$this->products->yourFunction();

注意:确保您的模型类名称是“产品”

于 2020-02-06T06:57:43.017 回答
0

我认为您应该使模型文件以大写字母开头:

products.php to Products.php

...然后使用以下语句:

$this->load->model('cart/products');
于 2017-10-10T12:44:51.333 回答
-1

它应该是$this->load->model('cart/Products_model', 'Products');

于 2013-06-07T02:00:01.790 回答
-1

1) CI 也支持 Models 下的文件夹,所以这不是问题。

2)确保模型中的类名也是“产品”。文件名和类名必须相同。

3)模型中的代码也可能存在问题。要调试它,只需从模型中删除所有代码,然后离开类定义并检查它是否有效。

于 2013-06-07T06:59:42.673 回答