1

次のテーブルがあります。

  • 管理者
  • プロパティ
  • 管理者_プロパティ

コントローラ ファイルのタイトルは次のとおりです。

  • administrators_controller.php
  • properties_controller.php
  • administrators_properties_controller.php

モデル ファイルのタイトルは次のとおりです。

  • 管理者.php
  • プロパティ.php
  • administrators_property.php

結合されたモデル名の単数/複数の命名規則がわかりません。(または、コントローラーに問題があるのでしょうか?おそらくadministrator_properties_controller.php?)

明らかな問題が思い浮かびますか?

4

1 に答える 1

2

単語の複数形または単数形を理解するのに問題がある場合は、インフレクターを使用してください: http://book.cakephp.org/2.0/en/core-utility-libraries/inflector.html

CakePHP 2.X を使用している場合、名前が間違っています。クックブックで CakePHP の命名規則について読む必要があります: http://book.cakephp.org/2.0/en/getting-started/cakephp-conventions.html

テーブル:

CakePHP モデルに対応するテーブル名は複数形でアンダースコアが付いています。

テーブルを結合する:

モデル間の hasAndBelongsToMany (HABTM) 関係で使用される結合テーブルは、結合するモデル テーブルに基づいてアルファベット順に名前を付ける必要があります (zebras_apples ではなく apples_zebras)。

コントローラー:

コントローラーのクラス名は複数形で、CamelCased であり、Controller で終わります。PeopleController と LatestArticlesController はどちらも従来のコントローラー名の例です。

モデル:

モデルのクラス名は単数形でキャメルケースです。Person、BigPerson、ReallyBigPerson はすべて、従来のモデル名の例です。

あなたの場合、テーブルは問題ありません。残りについて:

コントローラは次のようにする必要があります: AdministratorsController.phpPropertiesController.phpAdministratorsPropertiesController.php

モデルは次のとおりです: Administrator.phpProperty.phpAdministratorsProperty.php

于 2012-12-13T17:28:13.420 に答える