如何将列添加到我的表Users
。
因为我进行了迁移,所以我必须执行以下操作:
rails generate migration AddShowmsgColumnToUsers show_msg:boolean
然后:
rake db:migrate
但我不确定“AddShowmsgColumnToUsers
”。我怎么知道它是怎么想的?为什么不:AddShow_msgColumnToUsers
?如果问题是多元化和单一化,我可以运行rails console
并检查,但我怎么能知道大写字母:ShowMsg / Show_msg / Show_Msg / Showmsg?是否有一个命令可以帮助我检查它?
答案 0 :(得分:1)
在回答第一个问题时,只要表名正确无关紧要--Rails使用您为列指定的参数而不是迁移名称。
另外,你应该一次只问一个问题......; - )
答案 1 :(得分:1)
如果生成迁移以添加列,则应使用camelcase或underscores。此外,您不必在迁移生成器中放置“Column”,使用Add ... To ...迁移已经知道您正在添加列。
所以:
rails generate migration AddShowMsgToUsers show_msg:boolean
或:
rails generate migration add_show_msg_to_users show_msg:boolean
是要走的路。迁移生成器将导致以下迁移:
class AddShowMsgToUsers < ActiveRecord::Migration
def change
add_column :users, :show_msg, :boolean
end
end
当然你也可以手动完成所有操作,但是生成器的全部意义在于你不需要自己编写所有内容。