Поиск по тегу
Agile Web Application Development with Yii1.1 and PHP5

Появилась первая книга по замечательному PHP-фреймворку Yii.
В качестве примера, в книге рассматривается создание приложения для управления задачами.
Описывается идеология разработки через тестирование (TDD).
Судя по описанию, книга затрагивает все возможности фреймворка:
— атоматическое создание CRUD-интерфейса
— интернационализация приложения
— использование ORM
— авторизация и аутентификация пользователей
— интеграция сторонних библиотек и фреймворков
И еще много всего интересного!
официальный сайт
-
xoma,
- 12 августа 2010, 10:24
- Прокомментировать
- рейтинг: 0
Yii 1.1.3

Вышел релиз 1.1.3 Yii Framework
Исправлено 20 ошибок и добавлено около 50 новых фич и улучшений.
хороший обзор на хабре спасибо rosko!
change log
скачать
-
xoma,
- 05 июля 2010, 11:06
- Прокомментировать
- рейтинг: 0
YRequiredValidator со свойством allowEmpty
Большинство валидаторов в Yii имеют свойство allowEmpty, которое означает условие когда проверяемый атрибут может быть пустым. Исключением из этого большинства является CRequiredValidator, у которого данного свойства нет. Вообще это логично, так как этот валидатор необходим, чтобы проверить обязательное присутствие значения, однако возникают ситуации когда обязательность того или иного атрибута зависит от внешних настроек. Я взял стандартный класс CRequiredValidator и добавил всего несколько строк кода, для реализации необходимого мне поведения.
Теперь я могу писать вот так (отрывок метода rules()):
Может данная возможность еще кому-нибудь пригодится.
скачать
исходный код
Теперь я могу писать вот так (отрывок метода rules()):
....
array('verifyCode','YRequiredValidator','allowEmpty' => !Yii::app()->controller->module->showCaptcha),
....Может данная возможность еще кому-нибудь пригодится.
скачать
исходный код
Юпи! — CMS на Yii – http://yupe.ru
Исходный код – https://github.com/yupe/yupe
Присоединяйтесь!
-
xoma,
- 03 июля 2010, 11:07
- Прокомментировать
- рейтинг: 0
linkDump#9
1 Выбор фреймворка — особенно понравилось вот что: «CodeIgniter 2 Кохана и Yii пока не актуальны и постоянно изменяются и улучшаются»
2 Оформляем формы
3 Сглаживая кривую
4 Kohana Хэлпер Arr: работа с массивами
2 Оформляем формы
3 Сглаживая кривую
4 Kohana Хэлпер Arr: работа с массивами
-
xoma,
- 02 июля 2010, 14:22
- Прокомментировать
- рейтинг: 0
YMarkItUpWidget - виджет для Yii, подключающий редактор MarkItUp
В одном из проектов необходимо было использовать простенький висивиг-редактор. Мой выбор пал на markitup.jaysalvat.com/home/ — редактор, использующий jQuery. Для подключения редактора был написан совсем маленький виджет, который позволяет легко и просто из любого элемента типа textarea сделать тот самый висивиг-редактор.
Пример использования (отрывок кода из файла представления (view)):
Результат будет примерно следующим:

Единственным обязательным параметром является domId, он должен содержать id элемента textarea, который мы хотим превратить в висивиг-редактор. В данном примере параметр принимает значение Page_body.
Остальные параметры описаны на страничке с краткой документацией.
Исходный код
Загрузить YMarkItUpWidget
Краткая документация
Пример использования (отрывок кода из файла представления (view)):
<?php $this->widget('YMarkItUp',array('domId'=>'Page_body'));?>Результат будет примерно следующим:

Единственным обязательным параметром является domId, он должен содержать id элемента textarea, который мы хотим превратить в висивиг-редактор. В данном примере параметр принимает значение Page_body.
Остальные параметры описаны на страничке с краткой документацией.
Исходный код
Загрузить YMarkItUpWidget
Краткая документация
Юпи! — CMS на Yii – http://yupe.ru
Исходный код – https://github.com/yupe/yupe
Присоединяйтесь!
Мои размышления на тему модулей в Yii и модульности вообще
Разрабатывая любое приложение, разработчик старается сделать его как можно более масштабируемым, легко поддерживаемым и расширяемым. Частично эти задачи решает Модульность.
Для начала стоит определиться что же такое модуль в терминах Yii. Как гласит официальная документация, Модуль — это самодостаточная программная единица, состоящая из моделей, представлений, контроллеров и иных компонентов. Основная особенность модулей состоит в том, что их можно использовать в совершенно разных проектах, т.е. написав и отладив модуль один раз — его можно будет использовать и в других проектах… Но это все в теории. На практике же очень часто функциональность модуля зависит от основного приложения или же от других модулей. Например, допустим, мы пишем модуль «Форум» и хотим сделать его автономным и независимым от остального приложения. Тут возникает несколько проблем
Читать дальше →
Для начала стоит определиться что же такое модуль в терминах Yii. Как гласит официальная документация, Модуль — это самодостаточная программная единица, состоящая из моделей, представлений, контроллеров и иных компонентов. Основная особенность модулей состоит в том, что их можно использовать в совершенно разных проектах, т.е. написав и отладив модуль один раз — его можно будет использовать и в других проектах… Но это все в теории. На практике же очень часто функциональность модуля зависит от основного приложения или же от других модулей. Например, допустим, мы пишем модуль «Форум» и хотим сделать его автономным и независимым от остального приложения. Тут возникает несколько проблем
Читать дальше →
Диаграмма классов Yii
— один из активных участников сообщества на «наколдовал» диаграмму классов для фреймворка Yii версии 1.1.2.
Пользуемся!
Пользуемся!
-
xoma,
- 25 мая 2010, 09:44
- Прокомментировать
- рейтинг: 0
Yii Yandex JS API - класс-хелпер для работы с хостингом JS-библиотек от Яндекс
В документации по фреймворку Yii есть раздел, в котором описывается несколько способов увеличения производительности Yii-приложений. Одним из способов является подключение JavaScript-библиотек и фреймворков не с ваших собственных серверов, а с так называемых, CDN-серверов. Это позволяет значительно увеличить скорость загрузки веб-страниц и снизить нагрузку на собственные сервера. В состав Yii уже входит компонент CGoogleApi, который позволяет загружать JavaScript библиотеки с CDN-серверов Google. Относительно недавно у Яндекса появился свой хостинг JavaScript-библиотек, для работы с которым и был разработан этот небольшой класс-хелпер.
Краткая документация и примеры
Загрузить класс YandexJsApi
Полезные ссылки:
Проект Яндекса «Хостинг JavaScript-библиотек»
Клуб Хостинг JavaScript-библиотек
Рекомендую к прочтению, следующие книги по клиентской оптимизации:
«Разгони свой сайт»
«Реактивные веб-сайты»
Краткая документация и примеры
Загрузить класс YandexJsApi
Полезные ссылки:
Проект Яндекса «Хостинг JavaScript-библиотек»
Клуб Хостинг JavaScript-библиотек
Рекомендую к прочтению, следующие книги по клиентской оптимизации:
«Разгони свой сайт»
«Реактивные веб-сайты»
Юпи! — CMS на Yii – http://yupe.ru
Исходный код – https://github.com/yupe/yupe
Присоединяйтесь!
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-кода.
На данный момент в этот набор входит 5 виджетов для отрисовки кнопок, предназначенных для публикации контента в различных сервисах:
— 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 и авторизация по OpenID.
При разработке одного из проектов, возникла задача дать возможность пользователю авторизоваться по OpenID. Так как проект писался на Yii, то я начал поиски компонента для этого фреймворка, который помог бы мне с этой задачей. Был задан вопрос на форуме ответа так и не последовало =(.
Было принято решение написать такой компонент (или что-то подобное) самому. Изначально я не планировал разбираться во всех тонкостях протокола OpenID, а потому решил просто написать обертку (врапер) для одной из существующих библиотек. В качестве такой библиотеки была выбрана вот эта openidenabled.com/php-openid/.
Возможно как раз из-за нехватки знаний о каких-то специфических тонкостях протокола и его реализации в этой библиотеке, привело к тому, что, полученный врапер работал (и сейчас работает) не совсем корректно. О том, что именно не так расскажу чуть позже.
После некоторого времени разработки я получил вот такой вот классик-оболочку, который очень легко и удобно (на мой взгляд) использовать.
Читать дальше →
Было принято решение написать такой компонент (или что-то подобное) самому. Изначально я не планировал разбираться во всех тонкостях протокола OpenID, а потому решил просто написать обертку (врапер) для одной из существующих библиотек. В качестве такой библиотеки была выбрана вот эта openidenabled.com/php-openid/.
Возможно как раз из-за нехватки знаний о каких-то специфических тонкостях протокола и его реализации в этой библиотеке, привело к тому, что, полученный врапер работал (и сейчас работает) не совсем корректно. О том, что именно не так расскажу чуть позже.
После некоторого времени разработки я получил вот такой вот классик-оболочку, который очень легко и удобно (на мой взгляд) использовать.
Читать дальше →