我想在表“my_model”中添加一个布尔值字段(“is_public”)。目前我可以使用它:
class AddPublicToDream < ActiveRecord::Migration
def self.up
add_column :my_model, :is_public, :string
end
def self.down
remove_column :my_model, :is_public, :string
end
end
然后我可以在控制器中为mymodel.is_public指定“true”或“false”。
我可以替换:string with:boolean来实现同样的效果吗?它会节省一些数据库空间,比较:string?
答案 0 :(得分:71)
是的,您可以使用:boolean
,是的,它也可以节省数据库空间。
答案 1 :(得分:18)
将类型属性更改为:boolean
并再次运行rake db:migrate
。你应该可以打电话,例如:
Dream.is_public? # returning true or false depending whether is set.