0

私は過去2か月からcodeigniterで開発しています。しかし、今日Webホスティングサイトにコードをプッシュすると、このエラーが発生します。私が100回チェックしたことはほとんどありません。

  • コントローラーメソッドは言う$this->load->model('myModel');
  • モデルフォルダにありますmyModel.php
  • それでは始まります
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');<br/>

class MyModel extends CI_Model {
  public function __construct()
  {
   parent::__construct();
  }

スペルミスやタイプミスをチェックしましたが、すべて問題ないようです。

4

4 に答える 4

1

モデルの名前は小文字である必要があります:ディレクトリmymodel_model.php上。/application/models/

mymodel_model.phpには次のものが含まれています。

class Mymodel_model extends CI_Model {
public function __construct()
{
    parent::__construct();
}

そしてそれを次のように呼びます:

$this->load->model('mymodel');

文字_model列がオンになっている必要があります:

  • モデルのファイル名mymodel_model.php
  • 最初の大文字のクラス名class Mymodel_model

Codeigniterマニュアルの完全な例:http://ellislab.com/codeigniter/user-guide/general/models.html

于 2013-03-08T01:18:27.683 に答える
0

モデルの名前をすべて小文字にします。例: "mymodel.php"次に、autoload.phpにこのコードを配置します$ autoload ['libraries'] = array('session'、'database'); モデル内の親コンストラクトを取得して、このコードのように単純化するだけです。

 <?php
    class MyModel extends CI_Model
    {    
        public function functionName()
        {


        }
    }
于 2013-03-08T04:16:21.387 に答える
0

モデルのファイル名はすべて小文字にする必要があります。@ddjikicの返信は正しかった_modelので、必要ありません。

于 2013-03-08T14:27:03.153 に答える
0

codeigniter 3.0.0を使用していますが、本番サイトでホストしたときに、アプリケーションで同じ問題が発生しました。エラーで述べたように、ファイル名(最初の文字)を大文字にして保存しました。

大文字と小文字のファイル名は、さまざまなホスティングサーバーに依存しています。

ファイル名の最初の文字を大文字にしただけで、問題なく機能します。ホスティングサーバーの設定がわかりません。しかし、それは私のために働いた。あなたはまた、それがあなたのエラーを救うことができることを願って、試すことができます。

例:

<?php  if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class Enquiry_model extends CI_Model
{
}

上記の例のように、エラーが発生したときのファイル名はenquiry_model.phpでした。しかし後で私はそれをEnquiry_model.phpに名前変更し、それは私のエラーを救いました。

于 2015-03-20T15:35:05.610 に答える