|
killich ↓
|
 |
|
15 Август, 2009, 08:32:12
|
НЕ ХУЕТА!
ХУЕТА!
|
Группа: Санитары Карма: 20
Сообщений: 275 Сила слова: 7.27
|
ГЕНЕРАТОР (generator)
Генератор - программа (скрипт), занимающаяся написанием программ (или фрагментов кода) согласно заданным входным параметрам. Поскольку абсолютное множество фрагментов ROR приложения максимально унифицированы (согласуются со стандартами ROR), то у нас появляется возможность создавать программы, которые самостоятельно будут формировать красивый рабочий код некоторых фрагментов нашего приложения.
Так, например, большинство действий происходящих на сайте попадают в категорию CRUD (Create, Read, Update, Delete). Возьмем профайл пользователя - для него должны существовать функции - создать, читать (просмотр), обновить, удалить. Тоже самое со страницами сайта, каждая должна иметь возможность быть созданной, прочитанной, обновленной и удаленной. У данных действий совершенно аналогичный алгоритм, единственная разница - это название класса объектов, к которому алгоритм применяется (Profile и Page).
Известны генераторы, которые по заданным именам объектов создают полностью готовые к исполнению файлы логики (функции обработчики запросов), виды отображения и прочего. Так мы можем в считанные секунды, с помощью генератора создавать очень простые, но полноценные административные web интерфейсы.
Скаффолд, скаффолдинг (scaffold, scaffold generator)
Скаффолд - генератор, создающий полностью готовый к использованию административный интерфейс для управления объектами БД через web-браузере.
В качестве входных данных принимает имя Модели (класса объектов) и список полей таблицы БД с соответствующими типами данных (что бы под каждый тип данных создать соответствующий элемент ввода внутри html формы). Обеспечивает полный набор действий CRUD.
Скаффолд-генератор воплощает в себе одну из идеологий RAILS - DRY (DON't REPEAT YOURSELF) - т.е. не повторяйся (не пиши заново свой код). Действительно, создав генератор для создания файлов с аналогичным функционалом для разных фрагментов приложения, мы во многом избавляем себя от необходимости писать одинаковый код многократно.
Скаффолд (scaffold) - в переводе обозначает подмостки или строительные леса. Т.е. создает что-то такое, что позволяет быстро строить интерфейс.
Ролики формата - БЛОГ НА ROR ЗА 15 МИНУТ. Основаны на методике Скаффолдов.
|
|
|
|
|
Записан
|
|
|
|
|
CTAPbIu_MABP ↓
|
 |
|
15 Август, 2009, 10:04:01 , спустя 1 час 31 минуту 49 секунд
|
НЕ ХУЕТА!
ХУЕТА!
|
мавр
Группа: в ухо Карма: не нужна
Сообщений: 5184 Сила слова: 1.81
|
killich, покажи плз генератор для создания генераторов (с)
|
|
|
|
|
Записан
|
java.lang.OutOfMemoryError
|
|
|
|
killich ↓
|
 |
|
16 Август, 2009, 10:30:57 , спустя 12 часов 26 минут 56 секунд
|
НЕ ХУЕТА!
ХУЕТА!
|
Группа: Санитары Карма: 20
Сообщений: 275 Сила слова: 7.27
|
=)
К сожалению отдельного генератора генераторов нет - и не по причине того, что это не нужно, а потому, что такой генератор фактически является частью генератора плагинов.
Запустив генератор плагина вы так же получите и папку с генератором, поименованным так же как и плагин.
генератор плагинов и генератор генераторов =) естественно не напишет для вас нужный плагин и генератор, но создаст уже готовую инфраструктуру для их создания, как то: файлы инициализации, файлы шаблонов для генерируемого кода и директории, где будет это все структурировано храниться.
Так, Мавр.. разговор о генераторе генераторов для генерации генераторов предлагаю не начинать =)
|
|
|
|
|
Записан
|
|
|
|
|
CTAPbIu_MABP ↓
|
 |
|
16 Август, 2009, 01:42:34 , спустя 3 часа 11 минут 37 секунд
|
НЕ ХУЕТА!
ХУЕТА!
|
мавр
Группа: в ухо Карма: не нужна
Сообщений: 5184 Сила слова: 1.81
|
killich, да я ваще подъебать хотел а ты все всерьез...
|
|
|
|
|
Записан
|
java.lang.OutOfMemoryError
|
|
|
|
adw0rd ↓
|
 |
|
16 Август, 2009, 03:19:18 , спустя 1 час 36 минут 44 секунды
|
НЕ ХУЕТА!
ХУЕТА!
|
эдво
Группа: Джедаи Карма: не нужна
Сообщений: 17222 Сила слова: 1.65
|
Когда происходит генерирация, на каком этапе? Один раз при вызове "инсталлера"?
Потом можно изменить админ-формы?
|
|
|
|
|
Записан
|
|
|
|
|
killich ↓
|
 |
|
17 Август, 2009, 10:10:22 , спустя 18 часов 51 минуту 4 секунды
|
НЕ ХУЕТА!
ХУЕТА!
|
Группа: Санитары Карма: 20
Сообщений: 275 Сила слова: 7.27
|
killich, да я ваще подъебать хотел а ты все всерьез...
А я тупой да.. не понял .. да?! =)))
Надеялся ты оценишь мой тонкий хуморь =) Спустя 3 минуты 44 секунды добавил Когда происходит генерирация, на каком этапе? Один раз при вызове "инсталлера"?
Потом можно изменить админ-формы?
В любое время дня и ночи в независимости от самого приложения.
Представь себе набор готовых утилит для своего приложения, которые облегчают тебе работу над проектом.
Вот такие наборы утилит - оформлены в виде rake задач, которые можно писать и самому.
rake задача - это скрипт на руби, который в некотором смысле был порожден идеей make файлов nix систем. Поэтому и называется Ruby Make - Rake
|
|
|
|
|
Записан
|
|
|
|
|
phpdude ↓
|
 |
|
17 Август, 2009, 10:22:42 , спустя 12 минут 20 секунд
|
НЕ ХУЕТА!
ХУЕТА!
|
я - ЭМО
Группа: в ухо Карма: 339
Сообщений: 19713 Сила слова: 1.72
|
руби только своей ОС не хватает))
|
|
|
|
|
Записан
|
забанен. могу забанить других, пишите в личку BEER. Helping ugly people have sex since 1862.
|
|
|
|
adw0rd ↓
|
 |
|
17 Август, 2009, 10:34:03 , спустя 11 минут 21 секунду
|
НЕ ХУЕТА!
ХУЕТА!
|
эдво
Группа: Джедаи Карма: не нужна
Сообщений: 17222 Сила слова: 1.65
|
killich, ясно, прикольно )
|
|
|
|
|
Записан
|
|
|
|
|
CTAPbIu_MABP ↓
|
 |
|
17 Август, 2009, 11:48:33 , спустя 1 час 14 минут 30 секунд
|
НЕ ХУЕТА!
ХУЕТА!
|
мавр
Группа: в ухо Карма: не нужна
Сообщений: 5184 Сила слова: 1.81
|
|
|
|
|
|
Записан
|
java.lang.OutOfMemoryError
|
|
|
|
DarkMist ↓
|
 |
|
24 Февраль, 2011, 01:52:08 , спустя 556 дней 3 часа 3 минуты 35 секунд
|
НЕ ХУЕТА!
ХУЕТА!
|
|
Карма: 0
Сообщений: 3 Сила слова: 0
|
а можно пример какой нить по сложней , так в качестве учебного материала : (rails generate scaffold...)
|
|
|
|
|
Записан
|
|
|
|
|
killich ↓
|
 |
|
24 Февраль, 2011, 03:41:08 , спустя 1 час 49 минут
|
НЕ ХУЕТА!
ХУЕТА!
|
Группа: Санитары Карма: 20
Сообщений: 275 Сила слова: 7.27
|
|
|
|
|
|
Записан
|
|
|
|
|