The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Представлен Saint, инструмент для быстрого создания интерфей..., opennews (ok), 19-Янв-12, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


16. "Представлен Saint, инструмент для быстрого создания интерфей..."  +/
Сообщение от Аноним (-), 19-Янв-12, 19:48 
> Данный инструментарий упрощает жизнь веб-разработчикам, позволяя  быстро и эффективно
> создавать админ интерфейсы.
> Аналог ActiveAdmin, но свободен от рельсов.

А как с его помощью можно создать не проект с нуля, а именно админ-интерфейс к одной из таблиц в существующей бд sqlite?
Хоть с рельсами, хоть без :)

Ответить | Правка | Наверх | Cообщить модератору

23. "Представлен Saint, инструмент для быстрого создания интерфей..."  +/
Сообщение от slivu (?), 19-Янв-12, 20:23 
>> Данный инструментарий упрощает жизнь веб-разработчикам, позволяя  быстро и эффективно
>> создавать админ интерфейсы.
>> Аналог ActiveAdmin, но свободен от рельсов.
> А как с его помощью можно создать не проект с нуля, а
> именно админ-интерфейс к одной из таблиц в существующей бд sqlite?
> Хоть с рельсами, хоть без :)

Очень просто.

Устонавливаем Saint:

$ gem install saint

Создаём DataMapper модель:

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

Запускаем админ интерфейс.

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

Ставим модель, интерфейс и инициализатор приложения в файл app.rb и запускаем:

$ ruby app.rb

Ответить | Правка | Наверх | Cообщить модератору

24. "Представлен Saint, инструмент для быстрого создания интерфей..."  +/
Сообщение от Аноним (-), 19-Янв-12, 20:24 
А где здесь указывается какую таблицу из моей бд мы админим?
Ответить | Правка | Наверх | Cообщить модератору

25. "Представлен Saint, инструмент для быстрого создания интерфей..."  +/
Сообщение от slivu (?), 19-Янв-12, 20:37 
> А где здесь указывается какую таблицу из моей бд мы админим?

Saint не работает на прямую с БД, а обращается к таблицам через ORM.
Связка с таблицой здесь:
class PageModel
    include DataMapper::Resource
    property :id, Serial
    property :name, String
end

Это не  phpMyAdmin.

Это утилита для веб-сайтов.

[[http://saintrb.org/demo/  Здесь админ интерфейс]] для написания которого потребовалось всего 94 строк чистого Ruby


Ответить | Правка | Наверх | Cообщить модератору

30. "Представлен Saint, инструмент для быстрого создания интерфей..."  +/
Сообщение от Аноним (-), 19-Янв-12, 21:37 
> Saint не работает на прямую с БД, а обращается к таблицам через
> ORM.
> Связка с таблицой здесь:
> class PageModel
>     include DataMapper::Resource
>     property :id, Serial
>     property :name, String
> end
> Это не  phpMyAdmin.
> Это утилита для веб-сайтов.

позволяющая "быстро и просто генерировать  web-интерфейсы для управления данными в произвольных таблицах БД" - вот именно это я и пытаюсь понять.

Есть у меня таблица в моей sqlite БД. Как теперь мне "быстро и просто" сделать к ней веб-интерфейс для управления данными?

Есть пример где берётся таблица такая-то, с вот такими-то полями и затем к ней генерируется этот самый интерфейс для управления?
Хоть на чистом руби, хоть на грязном :)

Беглый просмотр документации такого к сожалению не выявил.

Ответить | Правка | Наверх | Cообщить модератору

32. "Представлен Saint, инструмент для быстрого создания интерфей..."  +/
Сообщение от slivu (?), 19-Янв-12, 22:36 
>[оверквотинг удален]
>> Это не  phpMyAdmin.
>> Это утилита для веб-сайтов.
> позволяющая "быстро и просто генерировать  web-интерфейсы для управления данными в произвольных
> таблицах БД" - вот именно это я и пытаюсь понять.
> Есть у меня таблица в моей sqlite БД. Как теперь мне "быстро
> и просто" сделать к ней веб-интерфейс для управления данными?
> Есть пример где берётся таблица такая-то, с вот такими-то полями и затем
> к ней генерируется этот самый интерфейс для управления?
> Хоть на чистом руби, хоть на грязном :)
> Беглый просмотр документации такого к сожалению не выявил.

как обычно делается для веб-сайтов, вам нужно сначала создать DataMapper модель.
есть опыт работы с DataMapper ORM?

вот самый простой пример модели, с двумя полями - id и name

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

у вас уже есть модель для вашей SQLite таблицы?
если нет, создайте.

теперь осталось лишь создать Saint класс который создаст админ интерфейс "на лету":
class Page
    include Saint::Api
    http.map :pages
    saint.model PageModel
    saint.column :name
end

и в конце файла, инициализируем и запускаем приложение:
app = Presto::App.new
app.mount Page
app.run
потом из терминала:

ruby  имя-файла.rb

и в броузере:

http://localhost:3000/


Ответить | Правка | Наверх | Cообщить модератору

33. "Представлен Saint, инструмент для быстрого создания интерфей..."  +1 +/
Сообщение от Аноним (-), 19-Янв-12, 22:49 
Понятно.

То есть в описании следовало указать "быстро и просто генерировать  web-интерфейсы для управления данными в DataMapper ORM" - до "произвольных таблиц БД" ещё нужно пилить и пилить.

А есть где-нибудь вводное руководство, подробно рассказывающее про DataMapper и Saint?

Ответить | Правка | Наверх | Cообщить модератору

34. "Представлен Saint, инструмент для быстрого создания интерфей..."  +/
Сообщение от kuragaemail (ok), 19-Янв-12, 22:56 
> То есть в описании следовало указать "быстро и просто генерировать  web-интерфейсы
> для управления данными в DataMapper ORM" - до "произвольных таблиц БД"
> ещё нужно пилить и пилить.

А что можно сократить в вышеизложенном коде? Разве что сделать автоматическую генрацию модели по таблице...

Ответить | Правка | Наверх | Cообщить модератору

42. "Представлен Saint, инструмент для быстрого создания интерфей..."  +/
Сообщение от Аноним (-), 20-Янв-12, 11:00 
> А что можно сократить в вышеизложенном коде? Разве что сделать автоматическую генрацию
> модели по таблице...

Именно это я и понимаю под "бытро и просто". Есть нечто, что подобное умеет?
А то фактическое дублирование полного описания структуры БД выглядит лишним кодом, не дающим никаких преимуществ по сравнению с прямым вызовом sql select..

Ответить | Правка | Наверх | Cообщить модератору

43. "Представлен Saint, инструмент для быстрого создания интерфей..."  +/
Сообщение от kuragaemail (ok), 20-Янв-12, 11:05 
>> А что можно сократить в вышеизложенном коде? Разве что сделать автоматическую генрацию
>> модели по таблице...
> Именно это я и понимаю под "бытро и просто". Есть нечто, что
> подобное умеет?
> А то фактическое дублирование полного описания структуры БД выглядит лишним кодом, не
> дающим никаких преимуществ по сравнению с прямым вызовом sql select..

Согласен, согласен...

Ответить | Правка | Наверх | Cообщить модератору

48. "Представлен Saint, инструмент для быстрого создания интерфей..."  +/
Сообщение от slivu (?), 20-Янв-12, 14:29 
вы действительно ставите под сомнение целесообразность ORM и предпочитаете работать через селект?

уважаемые, опомнитесь пожалуйста :)

Ответить | Правка | Наверх | Cообщить модератору

49. "Представлен Saint, инструмент для быстрого создания интерфей..."  +/
Сообщение от Аноним (-), 20-Янв-12, 19:44 
> вы действительно ставите под сомнение целесообразность ORM и предпочитаете работать через селект?

Именно так - работая напрямую с селектом я уменьшаю объём кода - нет нужды дублировать описание структуры бд.

ОРМ подходит если бд используется ТОЛЬКО как бэкэнд вебморды т. е. если веб-морда первична - данные создаются и изменяются в веб-морде, при необходимости через ОРМ обновляется структура бд.

А вот если веб-морда всего-лишь интерфейс, и данные создаётся в другом приложении, равно как им же и определяется структура бд, то ОРМ просто лишняя бессмысленная абстракция, к тому же раздувающая код. То есть если данные первичны, то ОРМ хуже чем использование простого селекта.

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

Ответить | Правка | К родителю #48 | Наверх | Cообщить модератору

51. "Представлен Saint, инструмент для быстрого создания интерфей..."  +/
Сообщение от Аноним (-), 20-Янв-12, 19:54 
> Согласен, согласен...

Жаль что с автоматизацией не вышло.
Ну раз уж всё-равно придётся писать селекты и роуты вручную, то  лучше воспользуюсь привычным yesod с мордой на jquery - всё таки нужны более веские аргументы чтобы смириться с синтаксисом и динамической типизацией руби :)

Ответить | Правка | Наверх | Cообщить модератору

54. "Представлен Saint, инструмент для быстрого создания интерфей..."  +/
Сообщение от kuraga333 (?), 22-Янв-12, 01:11 
>> Согласен, согласен...
> Жаль что с автоматизацией не вышло.
> Ну раз уж всё-равно придётся писать селекты и роуты вручную, то  
> лучше воспользуюсь привычным yesod с мордой на jquery - всё таки
> нужны более веские аргументы чтобы смириться с синтаксисом и динамической типизацией
> руби :)

Поверьте, руби того стоит :)

Ответить | Правка | К родителю #51 | Наверх | Cообщить модератору

35. "Представлен Saint, инструмент для быстрого создания интерфей..."  +/
Сообщение от slivu (?), 19-Янв-12, 23:01 
> Понятно.
> То есть в описании следовало указать "быстро и просто генерировать  web-интерфейсы
> для управления данными в DataMapper ORM" - до "произвольных таблиц БД"
> ещё нужно пилить и пилить.
> А есть где-нибудь вводное руководство, подробно рассказывающее про DataMapper и Saint?

обязательно свяжусь с модами с просьбой под-корректировать топик.

http://datamapper.org/docs/ инфа по DataMapper
http://saintrb.org/GettingStarted.md вводный туториал по Saint

Ответить | Правка | К родителю #33 | Наверх | Cообщить модератору

41. "Представлен Saint, инструмент для быстрого создания интерфей..."  +/
Сообщение от Аноним (-), 20-Янв-12, 10:57 
> http://datamapper.org/docs/ инфа по DataMapper

То ли я не так чего понял, то ли DM это сплошной boilerplate - указываю какую использовать бд, а затем ручками в поле класс фактически заново описываю её структуру в виде "поле такое-то", "тип такой-то". Нафик спрашивается, если эта информация уже лежит в бд?

Чем это лучше использования sql напрямую через select "поле такое-то"?

Ответить | Правка | Наверх | Cообщить модератору

46. "Представлен Saint, инструмент для быстрого создания интерфей..."  +/
Сообщение от slivu (?), 20-Янв-12, 14:03 
тогда, для начала вам надо вникнуть в суть ORM.

http://martinfowler.com/eaaCatalog/dataMapper.html

Ответить | Правка | Наверх | Cообщить модератору

50. "Представлен Saint, инструмент для быстрого создания интерфей..."  +/
Сообщение от Аноним (-), 20-Янв-12, 19:49 
> тогда, для начала вам надо вникнуть в суть ORM.
> http://martinfowler.com/eaaCatalog/dataMapper.html

Вник. Получилось что ОРМ мне не нужен ибо переделывать ОРМ-модель (к тому же бессмысленно дублирующую описание структуры бд) ничуть не легче, чем переписать несколько селектов при изменении структуры бд.

Ответить | Правка | Наверх | Cообщить модератору

36. "Представлен Saint, инструмент для быстрого создания интерфей..."  +/
Сообщение от all_glory_to_the_hypnotoad (ok), 20-Янв-12, 00:03 
ну и что это, млять, не тоже самое что делается в в других аналогчных фреймворках? В общем эта, а кто тут раздаёт права плоунам новости постить?
Ответить | Правка | К родителю #23 | Наверх | Cообщить модератору

37. "Представлен Saint, инструмент для быстрого создания интерфей..."  +/
Сообщение от kuragaemail (ok), 20-Янв-12, 00:07 
> ну и что это, млять, не тоже самое что делается в в
> других аналогчных фреймворках? В общем эта, а кто тут раздаёт права
> плоунам новости постить?

И что? Когда город новый образуется - тоже клоунство?

Ответить | Правка | Наверх | Cообщить модератору

38. "Представлен Saint, инструмент для быстрого создания интерфей..."  +/
Сообщение от Аноним (-), 20-Янв-12, 02:57 
Если пришел клоун и сказал "теперь считаем что есть город" город от этого не появляется, а клоун менее клоуном не становится.
Ответить | Правка | Наверх | Cообщить модератору

44. "Представлен Saint, инструмент для быстрого создания интерфей..."  +/
Сообщение от kuragaemail (ok), 20-Янв-12, 11:05 
> Если пришел клоун и сказал "теперь считаем что есть город" город от
> этого не появляется, а клоун менее клоуном не становится.

Тут, однако, городочек явно появился :-)

Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру