2

データベースにテーブル名「クラス」があり、「クラス」という名前のモデルを作成すると、構文エラーが発生します(明らかに)。データベース内のテーブルの名前を変更せずにこのエラーを削除する方法はありますか?

4

3 に答える 3

3

「Class」という名前のモデルには近づきません。これはphpのキーワードであり、そのようにインスタンス化する (@ AD7sixが指摘するように)問題を引き起こす可能性があります。

次のことができます。

class MyClass extends AppModel {
    public $useTable = 'classes';
}

コントローラーの ClassesController がMyClass(with で$uses) 呼び出されることを確認してください。ただし、それ以外に、予約済みのキーワードを気にすることなく、他のモデルと同じようにモデルを使用できます。

于 2013-07-29T14:16:14.870 に答える
1

使用した名前を思い出せませんが、cakephp で同様の問題があり、オンラインで調べたところ、テーブル名を変更する方がはるかに簡単であることがわかりました。命名規則は非常に厳密であり、これに対する回避策を作成する価値はありません。

于 2013-07-29T14:10:06.537 に答える