Refinery - CMS на Ruby on Rails

22 July 2009 #rails

Как создавать каркас приложения я уже описывал. А сегодня рассмотрим создание типового приложения. Если быть совсем точным, то не создание, а запуск готового. И в качестве примера возьмем Refinery.

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

А мы рассмотрим пока пример, как поднять Refinery CMS на локальной машине.

Переходим в папку разработки и выполняем команду:

$ git clone git://github.com/resolve/Refinery.git test

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

$ cd test
$ mv ./config/database.yml.example ./config/database.yml

Для того, чтобы не поднимать mysql-сервер, будем использовать sqlite3. Для этого подготовим ruby к использованию данной БД:

$ sudo gem install sqlite3-ruby unicode rmagick

последние два модуля нужны будут для самой CMS. Теперь изменяем файл .config/database.yml:

login: &login
 adapter: sqlite3
 dbfile: db/test.db

development:
 <<: *login

test:
 <<: *login

production:
 adapter: sqlite3
 dbfile: db/test.db

Обращаю внимание на то, что все лишнее убрано. И в файле, который приходит с git есть ошибка в модуле production, там лишний tab есть, который мешает выполнить корректно следующие команды. Поэтому, если вы используете mysql-сервер и используете файл их репозитория, меняя только нужные значения, не забудьте исправить данную огрешность.

Теперь, находясь в папке test выполняем последовательно следующие команды:

$ rake db:create
$ rake db:schema:load
$ rake db:seed

Все готово к использованию! Можно запускать сервер через запуск скрипта:

$ ruby script/server

Или же использовать thin:

$ thin -a 127.0.0.1 start

Открываем браузер и переходим по адресу 127.0.0.1:3000. Где сразу же увидим форму с предложением создать администратора сайта:

Welcome to Refinery

Переходим по кнопке и заполняем предложенные данные:

Login Page

После заполнения формы, переходим на основную страницу администрирования сайта:

Admin Page

Все возможности админки данной CMS можно посмотреть на видео, которое представлено на офсайте. Там же кратко показано, как задается оформление сайта. А до тех пор наша страница выглядит вот так:

Main page

То есть, фактически вообще без оформления. Не обращайте внимание на то, что ссылки продублированы, во время установки данной CMS я несколько раз запускал скрипты создания базы данных.

Админка очень удобна даже в том случае, если используется конфигурация по умолчанию.