Архив

Публикации с меткой ‘cakephp’

CakePHP. Перенос на хостинг

24 Август 2011 Нет комментариев

На различных форумах часто вижу что люди спрашивают как перенести проект на CakePHP с одного хостинга на другой, или с локальной машины на хостинг.
Чтобы без проблем перенести сайт достаточно всего нескольких простых действий:

  1. Задаем права 777 для каталога /app/tmp и всех его подкаталогов
  2. Удаляем все файлы(только файлы, каталоги оставляем) из каталога /app/tmp/cache
  3. В файле /app/config/core.php находим строчку «Configure::write(‘debug’, 2)» и проверяем чтобы на месте цифры 2 был ноль
  4. В файле /app/config/database.php меняем имя базы данных и информацию для доступа к ней.(если на новом хостинге эта информация отличается от старой)

В большинстве случаев этих простых шагов будет достаточно и ваш сайт заработает.
Если этого не произошло то можно попробовать сделать следующее:

  1. В файле /app/config/core.php находим строчку «Configure::write(‘debug’, 0)» и вставляем вместо 0 число 2. Это включит вывод ошибок на сайте
  2. Смотрим логи которые пишет фреймворк в каталоге /app/tmp/logs/
  3. Смотрим лог ошибок вебсервера. Его расположение зависит от используемого вебсервера и его настроек

Эти действия позволят вам найти и исправить возможные ошибки.

Так же следует обратить внимание на используемую версию php. В некоторых случаях(к примеру при использовании сторонних классов и библиотек) ваш проект может содержать код который не может быть выполнен установленной версией php.

CakePHP и относительные пути url в JavaScript

4 Апрель 2011 Нет комментариев

Способность web-приложения работать не только в корневом каталоге сайта, но и в любом подкаталоге делает его более привлекательным для использования.

Если при использовании CakePHP соблюдать стандарты и для формирования url использовать $html->link() и Router::url() то ссылки в приложении всегда будут с учетом того из какого каталога оно запущенно.

Но, как всегда есть «но». JavaScript ничего не подозревает о том из какого каталога запущено приложение. Из-за этого возникает проблема с url для AJAX запросов. Ниже я приведу один из способов решения этой проблемы.

Первым делом добавим во все layout’ы строчку в секцию head:

<base href="<?php echo Router::url('/'); ?>" />
</base>

Читать далее…

Обновление CakePHP. Версия 1.3.5

26 Октябрь 2010 Нет комментариев

С прошлого обновления прошло полтора месяца. За это время разработчики успели сделать больше 50-ти комитов в репозиторий и закрыть 40 тикетов.

Список самых значительных изменений:

  • На главную (по умолчанию) страницу добавлено уведомление о возможно неправильно работающих библиотеках PCRE;
  • RequestHandlerComponent теперь автоматически отправляет загаловки content-type и encoding;
  • Названия таблиц содержащие пробелы теперь работают корректно;
  • Улучшена совестимость с Postgres 9.0;
  • MemcacheEngine теперь корректно работает с IPv6 адресами;
  • Тэг <cake:nocache> теперь удаляется даже если CacheHelper не загружен;
  • SecurityComponent теперь корректно работает с иенами пользователей которые состоят из e-mail адресов;
  • Роутер теперь правильно обрабатывает выражения для параметра :action.

Скачать новую версию можно здесь.

Categories: cakephp Tags: ,

Использование UUID в качестве первичного ключа

15 Октябрь 2010 Нет комментариев

Первичные ключи в таблицах обычно имеют целочисленный тип и обычно автоинкрементные. При добавлении новой записи СУБД автоматически подставляет значение этого поля которое на единицу больше чем предыдущее.

В CakePHP существует возможность вместо числа использовать UUID. Для этого всего лишь необходимо для вашего первичного ключа указать тип CHAR(36) или  BINARY(36), все остальное CakePHP сделает сам.

Используем шаблонизатор Twig в CakePHP

11 Октябрь 2010 Нет комментариев

Есть такой замечательный php-шаблонизатор Twig которым с недавнего времени занимается автор фреймворка Symfony – Fabien Potencier.

По заверениям авторов этот шаблонизатор один из самых быстрых. Сторонние разработчики тоже подтверждают это.

Но речь в посте пойдет не о прелестях Twig, а о том как его можно «прикрутить» к CakePHP.
Читать далее…

Новый релиз CakePHP. Версия 1.3.4

12 Сентябрь 2010 Нет комментариев

Новая версия включает 77 коммитов в репозиторий и 54 закрытых тикета.

Вот несколько изменений которые могут повлиять на работу вашего приложения:

  • Файл схемы БД для плагинов теперь имеет переменную имени класса $PluginSchema, вместо AppSchema;
  • Параметры роутинга содержащие внутри «-» теперь работают как ожидается;
  • Исправленна ошибка при которой метод SessionComponent::destroy() не всегда удалял данные;
  • Улучшенна работа «Scaffold’инга» при работе с темами;
  • Метод String::insert() теперь работает лучше с ключами в начале которых содержатся другие ключи;
  • DboMysql теперь корректно работает с получением столбцов и параметров таблицы;
  • Исправленна ошибка функции setlocale(), связанная с использованием символа «,» ;
  • EmailComponent теперь более корректно обрабатывает адреса электронной почты имеющие алиасы.

Скачать новую версию можно из оффициального репозитория.

Categories: cakephp Tags: ,

Плагин для создания многоязычного сайта

7 Сентябрь 2010 Нет комментариев
Разработчики CakePHP выпустили плагин для упрощения создания многоязычного сайта.
Скачать можно на github’е.
Categories: cakephp, cakephp-plugins Tags: , ,

Статические и динамические страницы в одном контроллере

11 Февраль 2010 1 комментарий

В CakePHP есть замечательный стандартный контроллер pages который позволяет нам отображать статические страницы просто создав новый файл.

Но очень часто нам требуется иметь как статические страницы так и динамические, содержание которых хранится в БД. Ниже я приведу пример как это можно реализовать используя один контроллер.
Читать далее…

Categories: cakephp Tags: , ,

Агрегатные SQL функции в CakePHP

14 Сентябрь 2009 Нет комментариев

Для начинающих CakePHP программистов часто становится проблемой использовать агрегатные SQL функции такие как MAX, MIN или AVG. В этом посте я расскажу как легко с этим справиться.

Читать далее…

Хелперы. Полезные манипуляции со строками[перевод]

12 Май 2009 4 comments

CakePHP поставляется с кучей полезных хелперов и компонентов, которые обеспечивают удобные инструменты для обработки и манипулирования данными. Эти хелперы значимы не только для пользователя фреймворка, но и могут оказать большую помощь кому-нибудь кто пишет PHP приложения не используя CakePHP.
Читать далее…