Я подумываю о создании плагина для части администрирования моего приложения и я ищу некоторые рекомендации по его структурированию. Я буду использовать CakePHP 2.5.x
Часть 1:
Я буду Auth, а также Acl. Должен ли я настраивать это в /app/Controller/AppController.php
или /app/Plugin/MyPlugin/Controller/MyPluginAppController.php
?
Часть 2:
Предположим, я хочу получить доступ к Post Model: /app/Model/AppController.php
из моего плагина. Каков наилучший способ сделать это в моем плагине?
Какой из этих файлов я должен создать для этого? Мне даже нужно создать модель в моем плагине, если я просто расширяю модель из основного приложения ?:
//Model /app/Plugin/MyPlugin/Model/Post.php //Will this conflict with /app/Controller/PostsController.php? /app/Plugin/MyPlugin/Model/MyPluginPost.php //Controller /app/Plugin/MyPlugin/Controller/PostsController.php //Will this conflict with /app/Controller/PostsController.php? /app/Plugin/MyPlugin/Controller/MyPluginPostsController.php
Как я должен обрабатывать данные в Post Controller плагина? Я на правильном пути с этим?
<?php // app/Plugin/MyPlugin/Controller/MyPluginAppController.php App::uses('Posts.Post', 'Controller'); class MyPluginPostsController extends MyPluginAppController { public function index() { $this->Post->recursive = 0; $this->set('posts', $this->Paginator->paginate()); return $this->Crud->execute(); } }
Я понимаю, что задал много вопросов, просто хочу убедиться, что то, что я делаю, возможно / логично.