Rails 有没有在已有 model 中快速添加属性的方法

zealinux · October 26, 2012 · Last by feichan replied at October 29, 2012 · 3285 hits

举例子,常规的做法是:

rails g migration add_age_to_user age:string edit app/model/users.rb

然后将 age 属性添加至 attr_accesible 列表

rake db:migrate

有没有更快速的添加方式?

形如:

rails g model User age:string

这样就添加了属性,也自动生成了 migration

木有,他怎么知道你那个要不要加到 attr_accesible 里,又不是所有的字段都会加进去

@ywencn 如果自己写命令完成这个操作,怎么构思

如果大多数的属性都是 accessible 的话,可以在 application.rb 里把 config.active_record.whitelist_attributes 这个改成 false,然后再在 model 里用 protected_attributes 来声明哪些属性不能 mass-assignment,这样默认都是 accessible 了

如果你使用 rails 连接 mongoDB 的话,倒不用这样子,直接在 model 里添加就 OK,另外 migration 也不用了。

You need to Sign in before reply, if you don't have an account, please Sign up first.