Ответ 1
Я начал изучать Ruby on Rails несколько недель назад, и мне было намного легче получить информацию о вещах и узнать дорогу, не используя строительные леса и генерируя различные части из командной строки (или макросы в среде IDE).
Однако из того, что я могу сказать, когда вы используете строительные леса для генерации вещей, вы думаете об этом как о создании "ресурса", поэтому вы собираетесь создавать только один ресурс за раз, а затем добавлять отношения позже.
Однако команда generate model может создавать эти отношения для вас. Допустим, вы использовали строительные леса для создания ресурса Scale.
Тогда вы могли бы сделать
ruby script/generate model GuitarString name:string scale:references
Масштаб: ссылки создадут belongs_to :scale
в вашей модели GuitarString, но вам нужно будет добавить has_many: guitarstrings в вашу модель масштаба.
Команда generate model также создает миграцию script для вас и других необходимых файлов (светильников), похожих на строительные леса, но не автоматически создает представления или контроллеры или что-то еще.
EDIT:
Как правило, вам нужно делать что-то - использовать генерацию/модель или генерировать/просматривать или генерировать/контроллер или генерировать/переносить. Большинство разработчиков Rails не используют строительные леса, так как его "один размер подходит всем" редко идеально подходит. Тем не менее, большинство разработчиков rails используют команды генерации, о которых я упоминал, - это экономит время с созданием помощников и инструментов вручную, и дает каждому файлу его основной шаблон, который вы можете добавить.
Несколько Ruby IDE, таких как JetBrain RubyMine, имеют макросы, которые по существу выполняют эти команды. В RubyMine вы можете сделать ctrl + alt + g, а затем ввести другой ключ, соответствующий тому, что вы хотите сгенерировать.
Отношение role_to может быть сгенерировано с использованием слова "ссылки", как я уже упоминал. Другие вы добавите вручную.