Kohana

индекс
91,27

Модуль профайлинга «ProfilerToolbar»

Если вы используете Kohana, то скорее всего уже видели модуль DebugToolbar. Испробовав его на нескольких проектах, стало понятно, что его возможностей явно не хватает. А при использовании Ajax запросов данный модуль становиться вообще бесполезным.

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

ProfilerToolbar
7 февраля 2012, 20:50
105

Пишем модуль uLogin для Kohana 3.2 из песочницы

Не так давно на Хабре была статья про виджет авторизации uLogin.
Что мне в нём очень понравилось, это возможность указать обязательные поля, при этом, в случае их неполучения от провайдера, пользователю предлагается врчуную их заполнить. Так возникло желания написать модуль в Kohana, который позволял бы легко осуществлять регистрацию пользователя с помощью виджета uLogin.

+18
8 ноября 2011, 12:14
40

Видеокурс по Kohana 3. Часть 2

видеокурс по Kohana 3

Приветствую уважаемое хабросообщество!

В предыдущей публикации я рассказывал о своем бесплатном видеокурсе по Kohana 3 для начинающих, где опубликовал первые 15 видеоуроков.

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

Основываясь на знаниях, полученных из видеокурса, слушатель сможет самостоятельно запрограммировать функционал довольно сложного интернет-проекта.
+33
5 сентября 2011, 11:34
93

Изменения в Kohana 3.2 на русском

Сегодня на хабре уже было сообщение о том, что вышел релиз Kohana 3.2. Я решил в меру свободного времени перевести информацию об изменениях, связанным с этим релизом. В описании собрана информация о самых, на мой взгляд, значимых изменениях.

+37
25 июля 2011, 17:32
15

Зарелизилась Kohana 3.2.0

image
Поздравляю всех и каждого, сегодня зарелизилась новая версия фреймверка Kohana под номером 3.2.0.

Изменений меньше, чем было при релизе 3.1.0, но и их хватает.

С основным списком изменений и инструкции по обновлении можно ознакомится тут.

Так же к новой версии был подготовлен и новый сайт, который можно наблюдать по адресу: kohanaframework.org/
+16
25 июля 2011, 07:42
5

Автоматическая сборка приложения на Kohana с применением Phar

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

Начиная с PHP 5.2, появилась возможность распространять приложения или отдельные его компоненты в виде phar-архивов. Могу ошибаться, но пока такой подход не очень распространен. Я и сам никогда не пользовался таким способом дистрибуции ПО, но совсем недавно решил обратить на него внимание. В качестве эксперимента я выбрал один проект, который «крутится» на фреймворке Kohana. И вот, что у меня из этого вышло.
+18
20 июля 2011, 16:47
30

Работа с OAuth v2

Предлагаю почитать статью о «прикручивании» второй версии протокола OAuth (он на стадии черновика еще, ага). Сперва немного об общих принципах работы, потом привожу практическую часть (фреймворк Kohana, модуль OAuth).

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

Дико извиняюсь, но топики-ссылки мне неподвластны. Вынужден нагло публиковать в качестве полноценного топика.
+20
24 мая 2011, 16:45
37

Первичный кэш в Kohana 3 с использованием тегов из песочницы

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

Требовалось надолго кэшировать результаты работы методов моделей, которые обращаются к базе данных. Фактически, требовалось создавать копии наборов данных из базы, чтобы снизить нагрузку на СУБД. Для немедленного обновления кэша при добавлении новых данных или обновления старых требовалась очистка кэша по тегам.

Учитывая все это, и в связи с ограничениями используемых хостингов требования были следующие:
  • Кэш должен храниться в файлах.
  • Кэш должен храниться долго, для увеличения скорости извлечения данных и снижения нагрузки на СУБД.
  • При обновлении данных администратором сайта, кэш, содержащий устаревшие данные должен очищаться, причем, очищаться должен не только кэш результатов функций, напрямую извлекающих эти данные из базы, но и тех, результаты которых связаны с этими данными (например, при удалении рубрики каталога должен очищаться кэш списков позиций рубрик). Для достижения этой цели должны поддерживаться теги.
  • Ради достижения цели можно в определенных рамках пожертвовать временем, уходящим на добавление новых материалов, и которое будет затрачено в том числе на очистку кэша, так они добавляются «своим человеком», а не сторонними пользователями.

Стандартный класс Cache_File не поддерживает теги, по этой причине потребовалось писать свой класс, ему было дано имя JetCache.

Класс спроектирован по шаблону «одиночка». Рассмотрим пример работы класса в модели для банка файлов. При инициализации модели создается экземпляр:

$this->cache = JetCache::instance();


Создание кэша данных рассмотрим на примере функции для извлечения списка файлов определенной рубрики (здесь из нее удалены некоторые аргументы и некоторый код для упрощения чтения):
+12
19 мая 2011, 14:16
24

Видеокурс по Kohana 3.1

Приветствую вас, уважаемые хабралюди!

Хочу предложить вашему вниманию видеокурс моего производства по фреймворку Kohana 3.1.

Что за видеокурс такой и кому он нужен: видеокурс бесплатный, доступен без предварительной регистрации — я не последователь Азамата Ушанова (да-да, такие еще остались, но нас очень мало).

Основная цель видеокурса: рассказать понятным языком (доступным даже начинающему) о преимуществах ООП и MVC-подхода, о возможностях фреймворка Kohana в плане упрощения труда программиста в реализации часто используемых модулей.

Дело в том, что официальное руководство пользователя Kohana 3.1 никуда не годится (тем более для начинающего веб-мастера), получить структурированную в сложностно-тематическую последовательность информацию из разрозненных постов на блогах — весьма сложно. Я решил компенсировать этот недостаток выпуском видеокурса с последовательным изложением материала, от установки локальной среды разработки до реализации конкретного проекта на Kohana (проект — некая образовательная система, которую, от урока к уроку, я программирую на ваших глазах).

На кого рассчитан видеокурс: начинающие веб-мастера, желающие перейти от программирования на чистом PHP к MVC-фреймворку.
+49
19 апреля 2011, 11:53
162

Универсальная шаблонизация для Kohana 3.1 из песочницы

Здравствуйте, уважаемые жители Хабра.

Достаточно долгое время я работал с различными движками, фреймворками и иными самописными вариантами двигателя прогресса PHP, в следствие чего тогда еще юный и жаждущий перемен мозг сложил свое и, как это обычно бывает, весьма амбициозное впечатление о том, что нужно делать всё. Вот, совсем всё.

Копаясь в таких монструозных штуках, как Drupal или Joomla, я понимал, что да, обилие развитого API и наличие большого количества модулей делает такие движки незаменимыми при создании сайтов практически любой сложности, однако, переходя на более простые вещи, вроде MVC фреймворков CodeIgniter или Kohana (последний, по существу, следует концепциям HMVC), приходило понимание, что колоть орехи ракетами земля-земля не всегда удобно, и легкость не только в обращении с кодом, но и в работе самого сайта, что называется, «решает».

В настоящий момент я работаю на MVC (или HMVC, если быть точным) фреймворке Kohana, в частности, на ветках версий 3.0 и 3.1, и, попытавшись найти наиболее полное и элегантное решение для адекватной шаблонизации сайта, я с удивлением обнаружил, что либо мои навыки гугления морально устарели, либо действительно результаты подвели, но однозначно объективного лидера для моей задачи нет.

Собрав некоторые из своих мыслей и наработок, я решил объединить их в удобную и интуитивную систему шаблонизации.
+5
26 марта 2011, 15:42
27