Представлен Saint, инструмент для быстрого создания интерфейсов к СУБД

В рамках проекта Saint подготовлен инструментарий, который позволяет быстро и просто генерировать web-интерфейсы для управления данными в произвольных таблицах БД, путем создания каркаса на языке Ruby. Saint позволяет создавать любые HTML-поля на чистом Ruby, поддерживает любые типы ассоциирования таблиц, комплексные фильтры, встроенный файловый менеджер и другие полезные функции. Основная цель Saint — максимально упростить управление контентом определённых таблиц БД. Код проекта распространяется под лицензией BSD. Пример интерфейса, созданного на основании простого 100-строчного скрипта, можно оценить на данной странице.

Ниже приведён пример развёртывания административного интерфейса «в два клика». Для этого понадобиться Ruby 1.9.2 (или выше) и доступ к любому SQL-серверу, поддерживаемому в DataMapper (MySQL, SQLite, PostgreSQL и т.д.).

Для начала устанавливаем Saint:

   $ sudo gem install saint

Потом создаём модель (на данный момент Saint поддерживает только DataMapper ORM):

   class PageModel
       include DataMapper::Resource
       property :id, Serial
       property :name, String
   end

Дальше, создаём интерфейс:

   class Page
       include Saint::Api
       http.map :pages
       saint.model PageModel
       saint.column :name
   end

Теперь надо лишь запустить приложение. Стоит отметить что Saint построен на основе фреймворка Presto,
поэтому создаём приложение, монтируем в него Saint-интерфейс и запускаем:

   app = Presto::App.new
   app.mount Page
   app.run

Данный интерфейс является демонстративно тривиальным, и позволят лишь создавать/редактировать/удалять объекты лишь одной таблицы БД. Но добавлять новые таблицы довольно просто и легко, так что можно довольно быстро построить интерфейс определённой сложности.

Добавить комментарий

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

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.