Jelly — Пишем сложные запросы

Все разработчики, рано или поздно, начинают понимать что стандартными средствами ORM библиотеки невозможно реализовать сложные и удобные запросы.

То тут, мы не знаем как написать простейших запрос для подсчёта суммы, без вынимания всех значений, то там, мы не можем составить нетривиальное условие.

»

Модуль для простых миграций

В [предыдущем посте][1] я рассказывал о модулях миграций для Коханы 3. К сожалению ни один из модулей мне не понравился или по каким-то причинам не подошёл.

Сейчас же, я хочу представить свой форк модуля для миграций. Он основан на [kohana-3-migrations][2]. И получился сам по себе лёгкий и лишённый нескольких детских болезней своего родителя.

Итак, [встречайте][3] :) (он пока без нового названия и в экспериментальной ветке)

Вкратце, что он умеет:

  • Миграция сохраняется в виде обычной SQL-инструкции.
  • Инструкции UP и DOWN записываются в одном файле
  • В том же файле указывается описание миграции
  • Можно просмотреть список всех миграций
  • Накатывание и откат миграций теперь происходит ровно на один шаг
  • Появилось ключевое слово all для метода UP
»

Миграции в Kohana 3.0.*

Недавно восторженные апологеты «yii» опубликовали новость о том что теперь их [фреймворк поддерживает миграции к базе данных][1]. Имея опыт работы с миграциями в doctrine, я давно уже задумывался об использовании миграций в кохане. И решил что настал момент самостоятельно во всём разобраться.

»

Kohana 3.1 RC1

Все мы любим получать подарки, и наши любимые разработчики Kohana, похоже, решили нас [поздравить][1] по-своему, [выпустив][2] первый релиз-кандидат Kohana версии 3.1.

»

PHP Code Sniffer для Kohana 3

Как вы знаете, для того что бы написать хороший поддерживаемый код, нужно не только хорошо знать синтаксис языка программирования, но и писать код, удовлетворяющий общепринятым требованиям к оформлению кода.

Понятно, что после строительства Вавилонской башни, общепринятых требований только увеличилось. В том числе и для Kohana появились [специальные соглашения][1].

»

Универсальный git репозитарий для Kohana

Наверное многие из вас мучались в поисках нового модуля для Kohana, и мучались с периодическими обновлениями то системного ядра, то каких-либо модулей.

Про всё это можно забыть, если подключиться к git репозитарию, [kohana-universe][1], который содержит external (тут сложно назвать это понятно по-русски) ссылки на актуальные репозитарии со сторонними модулями и ядром системы.

Т.е. каждый раз обновляя этот репозитарий, вы обновляете и системное ядро, и все те 150+ модулей для Kohana.

»

Jelly — Добавляем тип поля «Изображение»

В дополнение к [отличной статье о Jelly][1] я решил рассказать о реализации типа поля «Image».

На самом деле я не изобретаю тут абсолютно ничего нового, я просто адаптировал оригинальную библиотеку от нестабильной версии Jelly к текущей, самой популярной, но уже не развивающейся версии.

Перед созданием нового типа, нужно немного изменить класс Field_File в файле /modules/jelly/classes/field/file.php

»