2016-06-21 104 views
0

我有一個現有模型'micropost',我發現模型的名稱更適合我的應用。在不影響其索引的情況下,將'micropost'模型重命名爲'story'模型會更好嗎?我正在使用Rails 5.0.0.rc1。遷移片段爲:帶遷移的重命名模型

class CreateMicroposts < ActiveRecord::Migration 
    def change 
    create_table :microposts do |t| 
    t.text :content 
    t.references :user, index: true 

    t.timestamps null: false 
    end 
    add_index :microposts, [:user_id, :created_at] 
end 
end 
+0

如果數據庫在本地,然後去chnage所有的名字根據自己的需要,否則,創建一個遷移重命名同樣的事情。 –

+0

@Bharatsoni感謝您的及時回覆。我應該使用up和down方法嗎?還是有更好的方法? – veekram

回答

0

1.使用遷移將數據庫表名從micropost更改爲故事。

class RenameOldTableToNewTable< ActiveRecord::Migration    
    def change 
    rename_table :old_table_name, :new_table_name 
    end 
end 

2 .Change手動的Active Record模型類到故事在控制檯上

+0

謝謝。工作就像一個魅力:) – veekram

+0

歡迎:) @veekram –

0

運行命令:

$軌摹遷移RenameMicropostToStory

編輯遷移文件:

class RenameMicropostToStory < ActiveRecord::Migration 

    def change 
    rename_table :microposts, :stories 
    end 

end 

然後,

$耙分貝:遷移

+0

謝謝尼廷。 :) – veekram