Печемо пиріжки або початок роботи з cakephp по-російськи

Дякую вам за підтримку!

Скоро товаришів, які пишуть по-старому веб-сторінки на голому php, можна буде показувати в зоопарках :) Настає ера фреймворками. І це добре, тому що програміст позбавлений багатьох великих завдань, і може зосередитися на створенні логіки додатка. У CakePHP використовується підхід MCV (Model - View - Controller). Тепер замість одного файлу * .php на одну сторінку їх буде цілих три мінімум%) - один для моделі (описує зв'язок форми з базою даних, має розширення php), thtml файл буде описувати зовнішній вигляд сторінки (view), третій (контролер сторінки з розширенням php буде реалізовувати логіку форми і буде містити методи, що доповнюють функціональність батьківського класу AppController.

Що ж, почнемо піч додатки як пиріжки :)) Але для цього доведеться переступити через себе і прийняти новий підхід до програмування. Воно того варте ^ _ ^

Потрібно прописати з'єднання з базою даних. Робиться це в директорії app / config - беремо за основу database.php.default і перейменовуємо його в database.php. Прописуємо в файлі параметри з'єднання з базою. Якщо все ОК то CakePHP повідомить про це.

Все готово для творчості.

модуль новин

Питання: чому б таблицю не назвати "news"? Таблиця повинна мати ім'я сутності у множині. В англійському "новини" news завжди вживається у множині, тим більше слово new є ключовим в php, що призводить до помилки.

В папці app / models створимо файл моделі post.php

У масиві $ validate описуються обмеження накладаються логікою додатка на дані. Ми заборонили порожні поля Текст, Тема і Дата.

контролер

Для цього йдемо в app / config / routes.php і міняємо там рядок

Невелика обробка напилком

Помилувавшись на отримане додаток, допитливий читач скоро відчує розчарування. Як поміняти стиль сторінки, прибрати маленький банер знизу і горде "CakePHP Rapid Development" в верху кожної сторінки? Як змусити функцію flash відображати текст російською мовою? Для цієї мети служать layouts. (Довго думав, як перевести layouts і вирішив зупинитися на слові "шаблони"). Бадьоро йдемо в папку app / views / layouts і поміщаємо там потрібні файли:

default.thtml. наприклад, такий:

Вилікуємо функцію flash від любові до utf8. Для цього розмістимо там же flash.thtml

Прототипи цих файлів можна побачити в папці cake / libs / view / templates / layouts

Начебто все :) Прошу php пуристів не критикувати мій код, бо зроблений він більше заради розваги. Рекомендую сходити на cakeforge.org і завантажити там мануал і допомогу по API в форматі chm. Удачі в печении булочок!

Схожі статті