Свежайшие Пирожки от CakePHP по-русски

Полнейшее руководство CakePHP 1.2 на русском языке, горячие новости и полезные статьи

Соглашения контроллеров

Названия классов Контроллеров имеют множественное число и слово “Controller” на конце. Если название состоит более чем из одного слова, то пробел не ставится и каждое следующее слово названия пишется с заглавной буквы. PeopleController и LatestArticlesController - это обычные имена контроллеров.

Первая функция, которую вы дожны определить в контроллере это index(). Если в запросе указан контроллер, но не указано действие, то CakePHP по умолчанию вызывает метод index(). Например, запрос http://www.example.com/apples/ вызывает метод index() контроллера ApplesController, тогда как запрос http://www.example.com/apples/view/ вызывает метод view() контроллера ApplesController.

Вы также можете управлять видимостью функций контроллера, используя префикс "нижнее подчеркивание" перед именами методов. Если название метода начинается с "_", то она будет не доступна при помощи запроса броузера, но будет доступна из других методов класса. Например:

Простой текст
  1. <?php
  2. class NewsController extends AppController {
  3. function latest() {
  4. $this->_findNewArticles();
  5. }
  6. function _findNewArticles() {
  7. //Логика для нахождения последних новостей
  8. }
  9. }
  10. ?>

Страница http://www.example.com/news/latest будет доступна пользователю как обычно, но если опробовать открыть http://www.example.com/news/_findNewArticles/ вы получите ошибку, так как название метода начинается с нижнего подчеркивания.