我最近选择了框架Codeigniter,但我似乎遇到了问题。
每当我使用模型自动加载器时,它会给我带来同样的错误: - “您正在加载的模型名称是已使用的资源的名称:”
如果您需要我的代码来解决问题。在我的代码中,我使用的是JQuery / Ajax。它调用控制器“Encounter”。
检查的合理之处在于我是否在任何地方调用自动加载的模型,但是我没有达到我检查的程度。
我稍微更改了代码以省略不重要的部分。
class Encounter extends CI_Controller {
public function __construct()
{
parent::__construct();
}
/* *
* Summary: Load descriptive, mutative (statistical) data
* @params: N/A
* #return: N/A
*/
public function startEncounter()
{
$encounter_id = $_POST['encounter_id'];
switch ($encounter_id)
{
case 1:
$this->load->model('target_model', 'target');
break;
}
$this->target->Start();
}
}
这是target_model:
class Target_model extends CI_Model {
// Has the player met the target before
public $F_hasMet = false;
function __construct()
{
parent::__construct();
}
public function Start()
{
$this->SayHello();
$this->encounter_model->CallDialog();
}
/* *
* Summary: Say hello
* @params: N/A
* #return: N/A
*/
public function SayHello()
{
$this->encounter_model->SetDialog("Hello");
$this->F_hasMet = true;
}
}
我的自动加载:
$autoload['model'] = array('encounter_model');
我正在尝试自动加载:
class Encounter_model extends CI_Model {
/* *
* Summary: Interactive data
*/
public $dialog = '';
function __construct()
{
parent::__construct();
if ( ! $this->input->is_ajax_request()) {
$this->output->set_status_header('401');
}
}
/* *
* Summary: Add or replace dialog
* @params: Message, addition
* #return: N/A
*/
public function SetDialog($message, $addition = true)
{
if ($addition) {
$this->dialog .= $message;
} else {
$this->dialog = $message;
}
}
/* *
* Summary: Displays the current dialog to the screen
* @params: Message, addition
* #return: N/A
*/
public function CallDialog()
{
$this->output
->set_content_type('application/json')
->set_header("HTTP/1.1 200 OK")
->set_output(json_encode($this->dialog));
}
}
答案 0 :(得分:0)
您似乎正在尝试在代码中的某处重新加载此模型。尝试搜索并删除可能的重复。
有关进一步的帮助,请参阅此内容。
The model name you are loading is the name of a resource that is already being used: base_model
答案 1 :(得分:0)
原来我有以下代码:
class Index extends CI_Controller {
public function index()
{
parent::__construct();
$this->load->view('game');
}
}
但我必须将构造放在构造函数中。
class Index extends CI_Controller {
public function __construct()
{
parent::__construct();
}
public function index()
{
$this->load->view('game');
}
}