Я новичок в Rails, так что мой текущий проект находится в странном состоянии.
Одной из первых вещей, которые я создал, была модель «Кино». Затем я начал определять его более подробно, добавил несколько методов и т. Д.
Теперь я понимаю, что должен был сгенерировать его rails generate scaffold
для подключения таких вещей, как маршрутизация, представления, контроллер и т. Д.
Я попытался сгенерировать строительные леса, но я получил сообщение о том, что файл миграции с таким именем уже существует.
Какой лучший способ для меня создать леса для моего "Кино" сейчас? (используя рельсы 3)
Ответы:
TL; DR :
rails g scaffold_controller <name>
Даже если у вас уже есть модель, вы можете сгенерировать необходимый контроллер и файлы миграции, используя
rails generate
опцию. Если вы запустите,rails generate -h
вы сможете увидеть все доступные вам опции.Если вы хотите создать каркас контроллера для своей модели, см
scaffold_controller
. Просто для ясности, вот описание этого:Чтобы создать свой ресурс, вы должны использовать
resource
генератор, а для создания миграции вы также можете увидетьmigration
генератор (видите, во всем этом безумии есть образец). Они предоставляют опции для создания отсутствующих файлов для создания ресурса. Кроме того, вы можете просто запуститьrails generate scaffold
с--skip
возможностью пропустить любые файлы, которые существуют :)Я рекомендую потратить некоторое время на поиск вариантов внутри генераторов. Они - то, что я не чувствую, документировано очень хорошо в книгах и тому подобное, но они очень удобны.
источник
rails generate scaffold_controller MyModel
слой представления, но он не включает атрибуты модели (столбцы таблицы), и вы должны добавить их вручную. Кто-нибудь знает, как это исправить? Я на Rails 3.2.8.generate scaffold
если у вас есть модель, но вы хотите, чтобы контроллер скаффолда и новые атрибуты были добавлены в нужную модель,scaffold_generator
а затемmigration
поля, которые вы изменяетеОтличный ответ
Lee Jarvis
, это просто команда, например; у нас уже есть существующая модель под названием User:источник
Для тех, кто запускает приложение rails с существующей базой данных, есть классный гем, призванный
schema_to_scaffold
сгенерировать скрипт scaffold. это выводит:от вашего
schema.rb
нашего вашего переименованногоschema.rb.
Проверьте этоисточник
В Rails 5 вы все еще можете запустить
создать все недостающие файлы скаффолдов или
создать контроллер и просматривать только.
Для лучшего объяснения проверьте рельсы эшафот
источник
Эта команда должна сделать свое дело:
источник
Вы можете использовать
scaffold_controller
и не забудьте передатьattributes
модель, иначе скаффолд будет создан без атрибутов.Эта команда сгенерирует следующие файлы:
источник