Kohana

Аутентификация с использованием Jelly и Jelly-Auth -- часть 2

Просмотров: 5924Комментарии: 6
Web frameworks

Briefly in English
Next part of tutorial on using Kohana 3 Jelly and Jelly-Auth (autologin, built-in role system application). Will be translated soon.


Часть 1


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

1. вместо
[code lang="php"]

$this->auth = Jelly_Auth::instance();

[/code]
лучше
[code lang="php"]

$this->auth = Auth::instance();

[/code]
Thanks SpadXIII


2. модуль ORM здесь действительно не нужен и его можно спокойно отключить (спасибо Sezarin).
Далее...

Authentication using Jelly and Jelly-Auth

Просмотров: 14405Комментарии: 0
Web frameworks

Russian version "Аутентификация с использованием Jelly и Jelly-Auth"



Next part of the tutorial



I decide to try Kohana 3 Jelly (by jonathangeiger and banks) and Jelly-Auth (by raeldc) ORM libraries for simple authentication application (consider it as tutorial). Before now I have not used ORM because of possible performance lack, but quick prototyping advantage forced me to make a try. I have to note that in Auth-like autentication some things are not very acceptable for me (e. g. storing user data in sesion), but for my purpose it is not critical.
Далее...

Аутентификация с использованием Jelly и Jelly-Auth

Просмотров: 6320Комментарии: 9
Web frameworks

Briefly in English
A short tutorial on using Kohana 3 Jelly and Jelly-Auth modules. English version.


Часть 2



Решил попробовать ORM в лице модного Jelly на примере аутентификации/авторизации, для которой использовал портированный со Sprig модуль Jelly-Auth. До настоящего времени я не работал с ORM подозревая его в тормознутости. Однако выгода быстрого прототипирования, которую он предоставляет, вынуждает попробовать. Скажу, что в реализации аутентификации семейством Auth мне нравится не все (например, хранение данных в сессии). Однако для пробы вполне подойдет.
Далее...

С Ko 2.3.4 на Ko 2.4

Просмотров: 2855Комментарии: 0
Web frameworks

Briefly in English:
I've decided to step-by-step move from 2.3.4. to 2.4. Below the most painless (for my project) updates are described. It is step #1.



Поскольку версии Kohana 2.3.5, по-видимому, не предвидится, решил потихоньку переползать на 2.4. Бегло просмотрев изменения, понял, что оно того стоит (например, в 2.3.х класс Kohana_Core объявлен как final, то есть его затруднительно расширять, а в 2.4 уже вполне можно). Тем не менее, поскольку проект достаточно большой, буду делать не все сразу, наименее травматичным способом.


UPD Узнал о сегодняшней трагедии в Москве. Соболезную всем тем, кто потерял там своих родных и знакомых. Не сдавайтесь и не отчаивайтесь.


Далее...

Всячина #2

Просмотров: 3206Комментарии: 0
просто Дневник

С интересом прочел дискуссию между двумя венчурными капиталистами -- Беном Хоровицем (Ben Horowitz) и Фредом Уилсоном (Fred Wilson) -- на тему того, должны ли стартапы (software) быть "толстыми" (fat), то есть должны ли они изначально вкладывать много денег в свое развитие. Если кратко, то суть дискуссии в том, что Бен заявляет "да, должны", потому что большее количество денег может обеспечить преимущество перед конкурентами. В пример приводится их с Марком Андрессеном компания Loudcloud, которая благодаря собранным $350 млн. в первые 15 месяцев работы смогла обойти конкурентов и вытеснить их с рынка, продавшись потом более чем за $1 млрд.

Далее...

Kohana 3 merging patch 0.2

Просмотров: 29746Комментарии: 8
Web frameworks

Апдэйт патча, который сливает использованные классы Kohana 3 в один файл и тем самым ускоряет загрузку, даже со включенным акселератором.

Что нового:

  • добавлена возможность кэширования классов в соответствии с роутами. При первой загрузке создается т.н. кэш-загрузчик (preloader), который включает несколько классов, после инклуда которых становится возможным вызвать Request::instance(). Загрузчик общий для всех роутов. Последующие же классы, более специфичные для роутов, могут быть сохранены в соответствующих файлах кэша. А могут и не быть -- если отключить соответствующую настройку, будет создаваться один большой универсальный файл кэша.
  • более удобное задание настроек кэширования
  • сброс кэша закачкой или созданием в каталоге файла со специальным названием
  • рефакторинг кода
Далее...

Kohana 3 merging patch

Просмотров: 7060Комментарии: 5
Web frameworks

Начитавшись Дмитрия Котерова, решил сделать "примочку", ускоряющую работу Kohana 3 за счет объединения файлов фреймворка в один большой. Сначала хотел сделать скрипт, автоматически проходящий по всем директориям и сливающий все файлы в один, однако из-за неясностей в разрешении зависимостей решил сделать нечто подобное форумному топику, когда в один файл объединяются автозагружаемые скрипты. В общем, оно получилось, правда, может ломаться при работе со сторонними библиотеками, с кохановскими вроде все нормально (к сожалению, мой модуль CheatSheet тоже ломается). Установка предельно простая -- копируем файл в APPPATH/classes и прописываем в bootstrap.php строку define('MERGED_CACHE_FILENAME', 'имя-файла'); , я пишу ее перед spl_autoload_register(). Также должен быть включен родной системный кэш Коханы.

(in English see below)

Далее...

Внутренние роуты в Kohana 3

Просмотров: 6641Комментарии: 4
Web frameworks

Briefly in English (I'm going to translate this article a little bit later):
A modification of Kohana 3 Request and Route classes allows to hide some controllers/routes from "outside" interaction.

Задача

Разрешить доступ к некоторым контроллерам системы (Kohana 3) только изнутри системы.


Вариант решения

Простейший случай -- проверять в контроллере $this->request === Request::instance() и отказ в случае TRUE. Однако я бы хотел немного усложнить задачу: система вообще не должна знать про "скрытый" контроллер, если запрос осуществляется "извне". Зачем так? Это может быть полезно, в частности, при реализации Front Controller с общей аутентификацией, назначением прав и т.п. Конечно, не так сложно сделать это распределенно, но... тогда считайте рассказанное ниже моим экспериментом.

Далее...

Kohana 3 CheatSheet module 0.3

Просмотров: 6036Комментарии: 11
Web frameworks

Небольшое обновление моего небольшого модуля CheatSheet для Kohana 3

Что нового:

- ручной сброс кэша

- запрет каталогов для отображения классов

- кнопка "закрыть" в блоке подсказки (чтобы не требовалось снайперской подготовки)


A little Kohana 3 CheatSheet module update

Added:

- manual cache invalidation (by clicking a link at the page bottom)

- can set directories to ignore classes

- "close" button for easier description block closing


Скачать/Download v. 0.3 95 (zip ~ 32 KiB)

UPD Свежая версия на Гитхабе/ Take last updated from GitHub

Пример работы / Demo CheatSheet

Модуль Kohana 3 CheatSheet 0.2

Просмотров: 4617Комментарии: 0
Web frameworks

Следующая версия плагина CheatSheet для фреймворка Kohana 3 -- 0.2. Основное изменение -- добавлен кэш, что уменьшило время генерации страницы более чем на порядок (где-то раз в 13, если быть более точным), а занимаемую память -- примерно на четверть. Инвалидация кэша не по времени, а по изменению данных. Кроме того, немного дополнен дизайн, убрана неприятная особенность, когда код мог вылазить за пределы своего блока. Рекомендую обновиться.

Файл справки в дистрибутиве README.ru


In English:

The next 0.2 version of CheatSheet module for Kohana 3 PHP framework  is presented. The main change is data cache, that strongly increases performance (page generation time become about 10 times less, memory consumption about 1/4 less). Cache invalidates not on expiration time but on data changes. Some other design features fixed and added. I recommend to update.

For more info see README.en file in distributive.

Страница с информацией о модуле

Module info page

Демонстрационная страница/Demo


Скачать/Download CheatSheet v. 0.2 95 (zipped ~32K)