Вам необходимо изменить имя контроллера и связанного с ним Модель , Представления , Помощники , Тесты & Маршруты каталоги, имена файлов, имена классов и имена в определениях классов.
Я нашел два способа сделать это, но прежде чем что-то попробовать, я рекомендую вам назад-вверх вашего приложения , желательно с системой контроля версий программного обеспечения, такой как Git & Github.com.
Ваш первый вариант - сделать это вручную, и здесь есть хорошее объяснение, как это сделать: Как переименовать контроллер и модель rails в проекте
Другой способ - destroy
ваш контроллер и модель, а затем generate
новый, это удалит все файлы, которые былисгенерирован первый раз и замените их новыми.Майкл Хартл хорошо объясняет это решение в своем онлайн-руководстве по Ruby on Rails здесь: http://ruby.railstutorial.org/chapters/static-pages#sidebar-undoing_things
Это решение, которому я следовал, когда мне нужно было внести изменения в мое приложение, мне нужно было заменить каркас MVC.сгенерированный называется board
с новым с именем product
.
1.Сначала
Я сделал резервную копию работы, которую я сделал в макете представления доски, app / views /boards / index.html.erb
2.Затем
Я запустил команды ниже рельсов в окне терминала.
$ rake db:rollback
$ rails destroy scaffold board name:string description:text image:string price:decimal
$ rails generate scaffold product product_type:string name:string description:text image:string price:decimal
$ rake db:migrate
3.Наконец
Я скопировал свою резервную копию файла boards / index.html.erb в только что созданный файл app / views / products / index.html.erb И нашел и заменил в моем текстовом редакторе на этот файл, чтобы заменить board
на product
.
Я думаю, что второй вариант гораздо надежнее и быстрее, но это важночтобы сделать это изменение на ранних этапах вашего проекта, прежде чем вносить слишком много ручных изменений в код.Лучше потратить немного больше времени на правильное планирование имен MVC и таблиц базы данных, прежде чем начинать проект.