Заметки про Yiiframework
Создать приложение YII
yiic webapp /home/webmaster/public_html
yiic.bat webapp Z:\home\mysite\www
Для корректной работы скрипта yiic.bat в Windows на Denwer следует либо исправить скрипт (прописать полный путь к php, либо добавить каталог с php в системную переменную PATH).
if "%PHP_COMMAND%" == "" set PHP_COMMAND=z:\usr\local\php5\php.exe
Запускать скрипт следует из каталога framework
Приложение в YII можно создать без консоли. Достаточно скопировать framework/cli/views/webapp/protected/.
Наиболее полный конфиг для YII:
http://www.yiiframework.com/wiki/59/using-the-configuration-file-explain-what-can-be-configured
http://www.yiiframework.com/doc/api/1.1/CWebApplication - конфиг = массив параметров
Можно поставить http://www.yiiframework.com/extension/yii-debug-toolbar Там в настройках все подключенные компоненты описаны и все их настройки.
http://issuu.com/vincentchoi/docs/yii-blog-1.1.0
Кэширование схемы БД:
http://www.larryullman.com/2010/06/28/caching-the-database-schema-using-memcached-with-yii/
'db'=>array(//...
'schemaCachingDuration'=>3600,//....
Контроллер по умолчанию site. Задать другой контроллер по умолчанию:
'defaultController'=>'default', // параметр в protected/config/main.php
Action по умолчанию index. Задать другой Action по умолчанию
public $defaultAction = 'newindex'; // переменная в Controller
Если нужный Action отсутствует, может быть вызван метод missingAction
class SiteController extends CController
{
public missingAction($actionID)
{
Yii::trace(' Action not found '.$actionID);
$this->redirect('site/index'); // вариант с редиректом
$this->run('index'); // вариант без редиректа
}
}
Язык по умолчанию задается в protected.config.main (сообщения верификации вроде “cannot be blank”)
'sourceLanguage' => 'ru',
'language' => 'ru',
Тотальный перевод - http://yiiframework.ru/forum/viewtopic.php?f=3&t=1001
Свой адрес для страниц, требующих авторизации (если null - выдает 403 ошибку и не перебрасывает на форму)
'loginUrl'=>null, // 'site/login'
Расширения для YII
http://www.yiiframework.com/extensions/
http://yiiframework.ru/forum/viewtopic.php?f=4&t=963
http://code.google.com/p/yiiplayground/
Динамическое изменение CUrlManager::rules
http://rmcreative.ru/blog/post/curlmanageraddrules
Структура
http://www.yiiframework.com/wiki/155/the-directory-structure-of-the-yii-project-site/
View - глобальный/модуль/каталог:
- “//layouts/main” указывает на «protected/views/layouts/main.php» (если «protected» — это базовая директория приложения)
- “/layouts/main” указывает на «protected/modules/abc/views/layouts/main.php» (если «abc» — это текущий рабочий модуль. Если нет, то это тоже самое, что и “//layouts/main”)
- “main” указывает на view-файл, размещенный в директории представлений текущего контроллера или в директории текущего макета (layout).
В атрибутах CHtml (а также - форм) убираем преобразование спецсимволов
echo CHtml::activeCheckBox($advertisment, ‘anyProposed’, array(
‘onClick’ => “document.getElementById(’myText’).value=’123′”,
‘encode’ => FASLE,
));
Включаем отладку, смотрим SQL
http://yiiframework.ru/forum/viewtopic.php?f=3&t=877
События в YII
http://devkp.ru/post/sobyitiya-v-yii
http://dr0id.ru/post/90/%D0%98%D1%81%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5+%D1%81%D0%BE%D0%B1%D1%8B%D1%82%D0%B8%D0%B9+%D0%B2+Yii
http://yiiframework.ru/forum/viewtopic.php?f=3&t=4255#p26793
RBAC в БД
http://www.yiiframework.com/doc/api/1.1/CDbAuthManager
http://yiiframework.ru/forum/viewtopic.php?f=3&t=4321#p26883 -
Привязка изображений к модели
http://www.yiiframework.com/extension/fileimagearbehavior
http://yiiframework.ru/forum/viewtopic.php?f=3&t=4342
http://yiiframework.ru/forum/viewtopic.php?f=3&t=1678&start=20#p10318
Grid
http://www.yiiframework.com/forum/index.php?/topic/24280-gridview-filtering-of-relational-data/
http://yiiframework.ru/forum/viewtopic.php?f=8&t=1284&start=10#p7918 - куки/сессии/поддомены
http://www.yiiframework.com/wiki/152/cookie-management-in-yii/ - cookie
Ajax link
http://yiiframework.ru/forum/viewtopic.php?f=3&t=4726#p29551
Полезные поведения
http://yiiframework.ru/forum/viewtopic.php?f=9&t=2000 - slug (транслит заголовка)
Twig Renderer
http://yiiframework.ru/forum/viewtopic.php?f=4&t=3511#p21424- static twig (CHtml)