Заметки программиста
Записи с метками Kohana
Установщик Kohana от ShadowHand
31 марта
Недавно я описывал свои костыли по поводу использования sh и git.
Оказывается у недавно появился намного более продуманный инструмент для автоматической установки фреймворка Kohana.
Kohana Installer
Инструмент командной строки для создания основы kohana приложения из официального репозитория на Github.
Github:
Требования
Shell, Библиотека curl
Для пользователей Windows – cygwin
Установка
1. Склонировать репозиторий kohana-installer
2. Сделать исполняемым файл kohana (chmod +x kohana)
3. Создать символическую сссылку для запуска, например я создал в /usr/local/bin
Пример создания символической ссылки
ln -s kohana /usr/local/bin/kohana
Cоздание каркаса Kohana через git (часть 2)
15 марта
В продолжение темы о помощи sh в в решении насущных проблемах программиста, привожу улучшеный пример инициализации структуры фреймворка kohana и некоторых модулей.
Возможно существует более оригинальное решение проблемы создания нескольких репозиториев с разными ветвями, но я использовал для этого Shell.
Ищу долгосрочную работу веб-программиста (удаленно)
11 декабря
Некоторые подробности о моих навыках можно посмотреть в аккаунте на фрилансе, остальное в личной беседе.
От себя хочу добавить, что хотелось бы работать в команде, учиться у мастеров своего дела, расширять горизонты и покорять новые вершины
Буду благодарен за помощь в поисках работы. Спасибо
update: прием заявок принят, спасибо всем за помощь
Использование логов в Kohana 3
10 сентября
Для ведения логов используется класс Kohana_Log, который реализует шаблон Singleton.
На данный момент есть возможность ведения логов только в файловую систему, для этого используется Kohana_Log_File, для добавления лога например в БД, вам нужно наследовать абстрактный класс Kohana_Log_Writer.
Подключение логгера происходит в bootstrap.php.
/** * Attach the file write to logging. Multiple writers are supported. */ Kohana::$log->attach(new Kohana_Log_File(APPPATH.'logs'));
Добавление записи в лог
Kohana::$log->add("NOTICE", "Just do it!");
В параметрах передается тип записи и само сообщение, тип сообщения может использоваться как для логического, так и физического разделения системы логирования на несколько частей.
Kohana: Использование database сессий и блокирование контроллеров
5 августа
Несколько раз сталкивался с проблемой блокирования всего приложения из-за работы «длительных» контроллеров (парсинг, импорт, экспорт и так далее). Опытным путем было обнаружено, что проблема заключается в использовании данных сессий. На некоторых этапах я решал эти недочеты подручными методами, но разобраться в самой сути проблемы так и не нашел время, сейчас хочется обсудить ситуацию подробнее.
В Kohana существует несколько адаптеров сессий:
- Native : Хранение данных сессий на сервере.
- Database : Хранение данных сессий в базе данных (необходим модуль Database).
- Cookie : Хранение данных сессии локально (например в браузере).
Модуль Kohana: HTML Table Library
23 июня
Наткнулся на очень полезный модуль для Kohana HTML Table Library, который позволяет преобразовывать массивы, результаты запросов базы данных и ORM в Html таблицы.
Модуль предоставляет возможности для установки данных, рендеринга таблиц, фильтрации данных и многого другого.
Вроде бы ничего особенного, но функциональность модуля меня впечатлила.
Быстрое создание каркаса Kohana через git
11 июня
Kohana использует для контроля версий и для совместной разработки. ()
Для незнакомых с git рекомендую к прочтению (Ru), так же хорошая документация на самом (En).
Ниже представлен пример sh скрипта для быстрого и удобного создания каркаса нового kohana приложения.
git init git submodule add git://github.com/kohana/core.git system git submodule add git://github.com/kohana/database.git modules/database git submodule add git://github.com/kohana/userguide.git modules/userguide git submodule add git://github.com/kohana/image.git modules/image git submodule add git://github.com/kohana/codebench.git modules/codebench git submodule add git://github.com/kohana/auth.git modules/auth git submodule add git://github.com/kohana/pagination.git modules/pagination git submodule add git://github.com/kohana/orm.git modules/orm git submodule init git commit -m 'Added initial submodules' mkdir -p application/classes/controller mkdir -p application/classes/model mkdir -p application/views mkdir -p application/config mkdir -m 0777 -p application/cache mkdir -m 0777 -p application/logs echo '[^.]*' > application/logs/.gitignore echo '[^.]*' > application/cache/.gitignore curl -o .htaccess http://github.com/kohana/kohana/raw/master/example.htaccess curl -o index.php http://github.com/kohana/kohana/raw/master/index.php curl -o application/bootstrap.php http://github.com/kohana/kohana/raw/master/application/bootstrap.php git add index.php git add .htaccess git add application git commit -m 'Added initial directory structure'
Для дальнейшей работы не забудьте отредактировать .htaccess и bootstrap.php.
Установка git на , , .
Загрузка изображений в Kohana 3
26 апреля
Некоторое время уже использую в своих проектах . Kohana, ранее Blue Flame, это PHP5 веб-фреймворк с открытым кодом, использующий архитектурную модель MVC (англ. Model View Controller).

На данный момент поддерживается две ветви развития фреймворка:
- Ветвь 2.x – Рекомендуется для приложений, которые уже написаны на основе 2.x, и, следовательно, не могут быть портированы на 3.x без значительной переработки. В
- Ветвь 3.x Рекомендуется для вновь разрабатываемых приложений. Третья версия полностью переработана и разрабатывается практически в одиночку одним из главных девелоперов фреймворка (Woody Gilk aka Shadowhand). Эта версия несовместима с предыдущими (2.x).
Я остановил свой выбор на третьей версии фреймворка. Подробнее об особенностях Kohana я расскажу позже, сейчас на небольшом примере рассмотрим простую задачу загрузки изображений.
