Поиск по тегу

Yii

Agile Web Application Development with Yii1.1 and PHP5

Agile Web Application Development with Yii1.1 and PHP5
Появилась первая книга по замечательному PHP-фреймворку Yii.

В качестве примера, в книге рассматривается создание приложения для управления задачами.
Описывается идеология разработки через тестирование (TDD).

Судя по описанию, книга затрагивает все возможности фреймворка:

— атоматическое создание CRUD-интерфейса
— интернационализация приложения
— использование ORM
— авторизация и аутентификация пользователей
— интеграция сторонних библиотек и фреймворков

И еще много всего интересного!

официальный сайт
Yii

Yii 1.1.3

Yii Framework
Вышел релиз 1.1.3 Yii Framework

Исправлено 20 ошибок и добавлено около 50 новых фич и улучшений.

хороший обзор на хабре спасибо rosko!
change log
скачать
Yii

YRequiredValidator со свойством allowEmpty

Большинство валидаторов в Yii имеют свойство allowEmpty, которое означает условие когда проверяемый атрибут может быть пустым. Исключением из этого большинства является CRequiredValidator, у которого данного свойства нет. Вообще это логично, так как этот валидатор необходим, чтобы проверить обязательное присутствие значения, однако возникают ситуации когда обязательность того или иного атрибута зависит от внешних настроек. Я взял стандартный класс CRequiredValidator и добавил всего несколько строк кода, для реализации необходимого мне поведения.

Теперь я могу писать вот так (отрывок метода rules()):
....
array('verifyCode','YRequiredValidator','allowEmpty' => !Yii::app()->controller->module->showCaptcha),
....


Может данная возможность еще кому-нибудь пригодится.

скачать
исходный код

Юпи! — CMS на Yii – http://yupe.ru

Исходный код – https://github.com/yupe/yupe

Присоединяйтесь!

linkDump#9

1 Выбор фреймворка — особенно понравилось вот что: «CodeIgniter 2 Кохана и Yii пока не актуальны и постоянно изменяются и улучшаются»
2 Оформляем формы
3 Сглаживая кривую
4 Kohana Хэлпер Arr: работа с массивами
Yii

YMarkItUpWidget - виджет для Yii, подключающий редактор MarkItUp

В одном из проектов необходимо было использовать простенький висивиг-редактор. Мой выбор пал на markitup.jaysalvat.com/home/ — редактор, использующий jQuery. Для подключения редактора был написан совсем маленький виджет, который позволяет легко и просто из любого элемента типа textarea сделать тот самый висивиг-редактор.

Пример использования (отрывок кода из файла представления (view)):
<?php $this->widget('YMarkItUp',array('domId'=>'Page_body'));?>


Результат будет примерно следующим:

YMarkItUpWidget - простой виджет для фреймворка Yii

Единственным обязательным параметром является domId, он должен содержать id элемента textarea, который мы хотим превратить в висивиг-редактор. В данном примере параметр принимает значение Page_body.

Остальные параметры описаны на страничке с краткой документацией.

Исходный код
Загрузить YMarkItUpWidget
Краткая документация

Юпи! — CMS на Yii – http://yupe.ru

Исходный код – https://github.com/yupe/yupe

Присоединяйтесь!
Yii

Мои размышления на тему модулей в Yii и модульности вообще

Разрабатывая любое приложение, разработчик старается сделать его как можно более масштабируемым, легко поддерживаемым и расширяемым. Частично эти задачи решает Модульность.

Для начала стоит определиться что же такое модуль в терминах Yii. Как гласит официальная документация, Модульэто самодостаточная программная единица, состоящая из моделей, представлений, контроллеров и иных компонентов. Основная особенность модулей состоит в том, что их можно использовать в совершенно разных проектах, т.е. написав и отладив модуль один раз — его можно будет использовать и в других проектах… Но это все в теории. На практике же очень часто функциональность модуля зависит от основного приложения или же от других модулей. Например, допустим, мы пишем модуль «Форум» и хотим сделать его автономным и независимым от остального приложения. Тут возникает несколько проблем

Читать дальше
Yii

Диаграмма классов Yii

Caveman — один из активных участников сообщества на www.yiiframework.ru/ «наколдовал» диаграмму классов для фреймворка Yii версии 1.1.2.

Пользуемся!

диаграмма классов (3.7 МБ)
тема на форуме
Yii

Yii Yandex JS API - класс-хелпер для работы с хостингом JS-библиотек от Яндекс

В документации по фреймворку Yii есть раздел, в котором описывается несколько способов увеличения производительности Yii-приложений. Одним из способов является подключение JavaScript-библиотек и фреймворков не с ваших собственных серверов, а с так называемых, CDN-серверов. Это позволяет значительно увеличить скорость загрузки веб-страниц и снизить нагрузку на собственные сервера. В состав Yii уже входит компонент CGoogleApi, который позволяет загружать JavaScript библиотеки с CDN-серверов Google. Относительно недавно у Яндекса появился свой хостинг JavaScript-библиотек, для работы с которым и был разработан этот небольшой класс-хелпер.

Краткая документация и примеры
Загрузить класс YandexJsApi

Полезные ссылки:
Проект Яндекса «Хостинг JavaScript-библиотек»
Клуб Хостинг JavaScript-библиотек

Рекомендую к прочтению, следующие книги по клиентской оптимизации:
«Разгони свой сайт»
«Реактивные веб-сайты»

Юпи! — CMS на Yii – http://yupe.ru

Исходный код – https://github.com/yupe/yupe

Присоединяйтесь!
Yii

Yii Social Components

В одном из проектов (проект на Yii) возникла необходимость размещать в материалах сайта кнопки для публикации контента в различных социальных сервисах, таких как ВКонтакте, Mail.ru, FaceBook, Twitter и некоторых других. В результате на свет появился набор виждетов, которые и выводили все эти кнопочки. После того как эти маленькие классики были готовы, возникла идея объединить их в набор, так называемых, «Социальных компонентов для фреймворка Yii» — вот так на свет и появился Yii Social Components(YSC).
На данный момент в этот набор входит 5 виджетов для отрисовки кнопок, предназначенных для публикации контента в различных сервисах:
— FaceBook
— Twitter
— Google buzz
— Mail.ru
— Vkontakte
В дальнейшем планирую добавить виджеты для других социальных сервисов, кроме того, все таки хочу найти время и доточить свой классик для авторизации по OpenID.

Имеется кратенькая документация для этих виджетов code.google.com/p/xomaprojects/wiki/YiiSocialComponents, котороя по мере появления новых компонентов будет обновляться.

скачать YSC

демо виджетов

p.s. Эти 5 виджетов выводят кнопки примерно такие, как можно видеть в этой статье (и на этом блоге), но, так как движок данного блога не на Yii, то я их вывел простой вставкой js-кода.

Юпи! — CMS на Yii – http://yupe.ru

Исходный код – https://github.com/yupe/yupe

Присоединяйтесь!
Yii

Yii и авторизация по OpenID.

При разработке одного из проектов, возникла задача дать возможность пользователю авторизоваться по OpenID. Так как проект писался на Yii, то я начал поиски компонента для этого фреймворка, который помог бы мне с этой задачей. Был задан вопрос на форуме ответа так и не последовало =(.
Было принято решение написать такой компонент (или что-то подобное) самому. Изначально я не планировал разбираться во всех тонкостях протокола OpenID, а потому решил просто написать обертку (врапер) для одной из существующих библиотек. В качестве такой библиотеки была выбрана вот эта openidenabled.com/php-openid/.
Возможно как раз из-за нехватки знаний о каких-то специфических тонкостях протокола и его реализации в этой библиотеке, привело к тому, что, полученный врапер работал (и сейчас работает) не совсем корректно. О том, что именно не так расскажу чуть позже.

После некоторого времени разработки я получил вот такой вот классик-оболочку, который очень легко и удобно (на мой взгляд) использовать.


Читать дальше
Яндекс.Метрика