1

CakePHP で共通のコントローラー、モデル、およびビュー用に複数のアプリケーションを開発する最良の方法は何ですか? このタイプのアプリケーションを開発するアイデアを持っている人はいますか?

4

2 に答える 2

1

これがプラグインの目的です。一連のコントローラー、モデル、ビュー (およびその他多数) を作成し、それらをまとめてパッケージ化し、すべてのアプリケーションにデプロイできます。詳細については、CakePHP クックブックを参照してください。

このアプローチを使用すると、余分なプラグイン部分が URL に追加されますが、これはルーティング ルールを提供することで修正できます。

于 2012-09-26T10:12:05.840 に答える
-1

これには 2 つの方法があります。

  1. 共通のコントローラー、モデル、およびビューをプラグインとしてパッケージ化する
  2. 共通コードを別のディレクトリ セットにApp::build()配置し、bootstrap.php で使用してそれらのディレクトリを含めます。
 App::build(array(
      'plugins' => array('/full/path/to/plugins/', '/next/full/path/to/plugins/'),
      'models' =>  array('/full/path/to/models/', '/next/full/path/to/models/'),
      'views' => array('/full/path/to/views/', '/next/full/path/to/views/'),
      'controllers' => array('/full/path/to/controllers/', '/next/full/path/to/controllers/'),
      'datasources' => array('/full/path/to/datasources/', '/next/full/path/to/datasources/'),
      'behaviors' => array('/full/path/to/behaviors/', '/next/full/path/to/behaviors/'),
      'components' => array('/full/path/to/components/', '/next/full/path/to/components/'),
      'helpers' => array('/full/path/to/helpers/', '/next/full/path/to/helpers/'),
      'vendors' => array('/full/path/to/vendors/', '/next/full/path/to/vendors/'),
      'shells' => array('/full/path/to/shells/', '/next/full/path/to/shells/'),
      'locales' => array('/full/path/to/locale/', '/next/full/path/to/locale/')
  ));
于 2012-09-26T10:22:36.757 に答える