私は次のモデルを持っています:class_userは、データベースclas_userのテーブルの後に置かれています。このモデルを次のコードで呼び出すと、Kohana 3.2:名前にアンダースコアを含むモデルを呼び出す
$class_user = new Model_Class_User();
私のモデルが見つかりません。私のモデルファイルでは、クラスの名前は全く同じです(Model_Class_User)。
Kohanaはアンダースコアのモデル名が嫌いですか?
私は次のモデルを持っています:class_userは、データベースclas_userのテーブルの後に置かれています。このモデルを次のコードで呼び出すと、Kohana 3.2:名前にアンダースコアを含むモデルを呼び出す
$class_user = new Model_Class_User();
私のモデルが見つかりません。私のモデルファイルでは、クラスの名前は全く同じです(Model_Class_User)。
Kohanaはアンダースコアのモデル名が嫌いですか?
アンダースコアは、アプリ内のファイルの場所を直接反映しています。あなたのClass_User
モデルファイルがapplication/classes/model/class/user.phpにあることを意味します。
ファイル名にはアンダースコアを使用しないでください。
ここでは、Kohanaの規則とカスケードファイルシステムについて学ぶためのリンクがいくつかあります。 http://kohanaframework.org/3.2/guide/kohana/conventions
http://kohanaframework.org/3.2/guide/kohana/files
またORMについて学ぶためにhttp://kohanaframework.org/3.2/guide/orm/modelsを見てください。あなたのテーブルには従来通りの名前がないので、すぐに$_table_name
変数を作成する必要があることがわかります。以下に示す例。
class Model_Class_User extends ORM {
protected $_table_name = 'class_user';
}
は完全に合意しました。本当にありがとう。 – Prusprus
それは働きましたか?私はproduct_detailsという名前のテーブルを持っています。その後、Model_Product_Detailを作成し、保護された$ _table_name = 'product_detail'を宣言しました。しかしそれはまだ働きませんでした。 –