[英]unable to locate the model you have specified codeigniter
我无法获得模型文件User_model.php
我已经在models/frontend/user_model.php
指定了文件
在user_model.php中声明
<?php
class User_model extends CI_Model {}
我在Controller中有用户模型:
<?php
class User_controller extends MY_Controller {
public function __construct()
{
parent::__construct();
$this->load->model('frontend/user_model');
}
这在我的本地主机上正常工作,但是当我在我的域上托管时,会出现此类错误。
您需要将模型文件从user_model.php重命名为User_model.php。在Windows wampp或xampp中,大小写无关紧要,但是您的生产环境必须在Linux上并且区分大小写,这就是为什么会出现错误的原因。
您是否遵循Codeigniter用户指南 ?
class User_model extends CI_Model {
function __construct()
{
parent::__construct();
}
}
您的文件将为: application/models/user_model.php
如果使用<?
作为开始标记(在文件的开头检查),将其更改为<?php
。 服务器可能不允许使用速记样式。
如果您仍然不走运,请尝试以下操作:
$CI =&get_instance();
$CI->load->model('articles_model');
$parameter = $CI->articles_model>getarticle($id);
上课或上课时,您必须使用班级的首字母大写。 这样称呼您的模型。
$this->load->model('frontend/User_model');
我也面临这个问题。 在codigniter 3.0或更高版本中,我们必须对课程使用首字母大写。
检查型号名称。 区分大小写的名称在localhost
被忽略。 但是在服务器中,它们被视为不同的文件。 我可以看到您的模型名称是user_model
。 但是Model类是User_model
,用大写字母表示。 希望对您有所帮助。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.