По дате Февраль 9th, 2011

Yii framework - заметки на полях

Заметки про 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)

http://yiiframework.ru/forum/viewtopic.php?f=3&t=6237#p38536 - yii db where add in condition
http://yiiframework.ru/forum/viewtopic.php?f=3&t=6236&p=38576#p38576 - массив id=>value из query (db command)

http://www.larryullman.com/2010/08/10/handling-related-models-in-yii-forms/ - Yii MAnY MANY save

Опубликовано Февраль 9, 2011 | автор: levik  |  Нет комментариев »