I started a Rails app and everything works fine. But now, I would like to rename a controller and the associated model:
I wanted to change the Corps con
Here is what I would do:
Create a migration to change the table name (database level). I assume your old table is called corps. The migration content will be:
class RenameCorpsToStores < ActiveRecord::Migration
def change
rename_table :corps, :stores
end
end
Change your model file name, your model class definition and the model associations:
corp.rb -> store.rbstore.rb: Change class Corp for class Storehas_many :corps -> has_many :storesChange your controller file name and your controller class definition:
corps_controller.rb -> stores_controller.rbstores_controller.rb: Change class CorpsController for class StoresControllerRename views folders. From corps to stores.
Make the necessary changes in paths in the config/routes.rb file, like resources :corps -> resources :stores, and make sure all the references in the code change from corps to stores (corps_path, ...)
Remember to run the migration :)
If previous is not possible, try to delete the db/schema.rb and execute:
$ rake db:drop db:create db:migrate