我想在表"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

然后我可以给我的模型指定"真"或"假".在控制器中是公共的.

我可以用:boolean替换:string来达到同样的效果吗?与:string相比,它会节省一些数据库空间吗?

推荐答案

是的,你可以用:boolean来做这个,是的,这也会节省数据库空间.

Ruby-on-rails相关问答推荐

对Rails进行枚举不允许空值

在Ruby on rails中,重复访问ActiveRecordModel返回相同的对象:预期行为还是错误?

为什么 Rails 执行器不能识别内核的改进?

在 Rails 中进行 Http 基本身份验证

如何启动 rails 控制台并专门使用测试数据库?

Rails 路由到唯一索引

在哈姆尔与当地人进行局部渲染?

撬Ruby 如何重新加载?

PostgreSQL 无间隙序列

Rails 3 中的动态错误页面

Rails:参数太少

没有图像时如何在回形针中显示隐藏图像

过滤器在渲染之前但在控制器之后执行?

在 rails 3 中批量插入

has_many :通过 class_name 和 foreign_key

以最Ruby 风格计算 ActiveSupport:TimeWithZone 天数的差异?

Rails 路由:GET 没有参数 :id

何时在 Ruby on Rails 中使用 lambda?

rails 3,如何在 Settings.yml 文件中使用 ENV 配置变量?

在 Rails 4.1 中,如何通过枚举符号查找记录?