Проголосуй за включение symfony в NetBeans IDE!
NetBeans, это опен-соурс среда (IDE) для разработчиков, спонсируемая компанией Sun. Сейчас планируется включение поддержки PHP фреймворков в следующей версии. Так как сейчас доступно большое количество фреймворков, разработчики NetBeans устроили голосование на выбор двух PHP фреймворков которые будут поддерживатся.
Если вам наравится фреймворк symfony, пожалуйста уделите пару минут и проголусуйте «ЗА» (vote for) symfony:
Читать дальше →
Новинки в symfony 1.2 или движемся к простой архитектуре (Часть 1)
Сегодня мы поговорим о новой системе роутинга – роутинг фрейморк.
Роутинги как объекты класса
До symfony 1.2, система роутинга (через класс sfPatternRouting ) хранила роуты в ассоциативном массиве. Старая система отлично работает, но при этом трудно настраиваемая под свои нужды. Для того чтоб дать разработчикам свободу в модификации и улучшении процесса роутинга, в новой версии все роуты хранятся как массив объекта sfRoute.
Читать дальше →
Объявление типов столбцов (enum, datetime, tinytext, year) для MySQL, которые явно не поддерживаются в Propel 1.3
В документации Propel можно увидеть таблицы соответствия между ним и типами столбцов MySQL (Propel Column Types). Проблема в том, что не все типы столбцов можно явно указать, например, если в схеме указать нижеследующее, то получим ошибку на счет поля created_at:
my_product_i18n:
_attributes: { phpName: ProductI18n }
id: { type: integer, required: true, primaryKey: true, foreignTable: my_product, foreignReference: id }
culture: { isCulture: true, type: varchar, size: 7, required: true, primaryKey: true }
name: { type: varchar, size: 50 }
created_at: { type: datetime }
Symfony и Propel 1.3: реализация своих joins в методах doSelect*
Это решение проблемы для Symfony 1.1 и Propel 1.3, когда нужно из двух таблиц объединенных черех join получить все данные. Т.е. хотим выполнить такой запрос
SELECT news.NEWS_ID, news.CATEGORY_ID, news.TITLE, news.BODY, news.CREATED_AT,
news_category.CATEGORY_ID, news_category.NAME
FROM `news`
LEFT JOIN news_category ON (news.CATEGORY_ID=news_category.CATEGORY_ID)
А вот с этим проблема, если таблицы не связаны через внешний ключ (foreign key), вывести данные из второй таблицы news_category проблематично, но возможно. В основе материал: Applying custom joins in doSelect* method. Но для новой версии материал не соответствует действительности. Чтобы все заработало, следует сделать следущее.
Третье обновление в системе плагинов Symfony
С каждым днем система плагинов становится все лучше. Благодаря отличной обратной связи комьюнити, в течении недели были внесены следующие изменения:
• К плагину можно загрузить рисунок, который выводиться во вкладке «Plugin Information» и используется в RSS.
• Чтобы присоединиться к команде разработчиков плагина теперь нужно указать причину. Ранее это не требовалось. На основании этой информации руководитель плагина может принять или отклонить запрос.
• С главной страницы можно просмотреть плагины по категориям или перейти на список всех плагинов.
• Появилась вкладка «Изменений» (Changelog). Информация добавляется из файла package.xml. В FAQ можно ознакомиться как все это работает.
• Обновили RSS с целью отображение более подробной информации.
• Каждый пользователь представлен через систему gravatar.
Оригинал поста: The plugin system gets better
По материалам: Журнал веб разработчика
Проблема при использовании sfWidgetFormPropelSelect от плагина sfPropelPlugin
sfPropelPlugin это плагин для работы с Propel 1.3. Текущая версия 1.3.0 stable от 28/05/2008. Наткнулся на проблему при использовании виджета sfWidgetFormPropelSelect. Если указать порядок сортировки, то получаем ошибку на экран.
Внимание! обновился плагин sfPropelFinderPlugin
Все кто использует это плагин и следит за его новыми версиями, обратите внимание, в новой версии произошла замена sfPropelFinder::setPeerClass() на sfPropelFinder::setClass() (это нарушит работу существующих классов, которые наследуют sfPropelFinder), так же был проведен рефакторин соединения с базой данных и реинициализации запросов и ряд других обновлений.
Второе обновление в системе плагинов Symfony
Разработчики не перестают удивлять скоростью реакции на фидбеки от комьюнити. Вот очередная серия доработок к системе плагинов:
-
Появилось новое поле для описания плагина. Это поле не зависит от версии плагина и будет выводиться на главном табе "Plugin Information".
-
Каждый плагин можо связать с ORM, который он использует. Первоначально это свойство задавалось автоматически основываясь на имени плагина и некоторых "таинственных" характеристиках. Теперь это поле может задать разработчик. С этого момента информаци о используемом ORM в плагине станет более достоверной.
-
Добавлен полезный инструмент для тестирования README файла перед созданием PEAR пакета. Для проверки заходим на страницу проверки валидности Markdown. На этой же странице вы найдете и шпаргалку по разметке Markdown.
Очередной Symfony camp, пройдет в Голландии
Ежегодная встреча сообщества symfony состоиться 12-13 сентября в Dutch Open Projects (DOP), что в Голландии.
Мероприятие начнется с тренинга по symfony 1.1, предствляет Nicolas Perriault (менеджер релиза symfony 1.1).
Докладов не так много, и на мой взгляд как-то маловато для такого мероприятия, вот список некоторых из них:
- Обучающие уроки от Yahoo! (Dustin Whittle)
- Производительность symfony (Fabian Lange) – это интересно
- symfony и Doctrine vs Propel (Jonathan Wage, главный разработчик Doctrine)
- Библиотеки интерфейса пользователя от Yahoo (Dustin Whittle)
- Плагины и как создавать свои собственные (Lambert Beekhuis)
- Генерация Админ панели (Ian Christian)
- symfony 2.0
Кто созрел, регистрируется, и потом рассказует всем нам как там было хорошо ))
Обновления в системе плагинов
Неделю назад была реализована новая система плагинов Symfony. За это время было добавлено 30 новых плагинов, и сделано около 51 обновлений для существующих.
Благодаря обратной связи от пользователей были получены отзывы, на основании которых внесены следующие изменения:
• Редизайн главной страницы плагинов. Теперь с главной можно получить информацию о всех новинках, изменениях. Улучшена система поиска плагинов.
• Добавлены новые RSS каналы: информация о новых плагинах или обновления существующих.
• Документации для некоторых плагинов была доступна только на Wiki, поскольку она не была объединена с плагином. Таким образом, чтобы облегчить переход, со старой информации trac можно воспользоваться ссылкой (http://raw.trac.symfony-project.org/wiki/SymfonyPlugins). Если вы автор плагина, пожайлуста перенести всю вашу документацию в файл плагина README как можно быстрее. Пожалуйста, имейте в виду, что это временная ссылка.
Перевел: Игорь


