Tag: 布尔值

Ruby on Rails – Checkbox没有保存到数据库?

我有一个使用布尔值的迁移,并在其视图中生成一个复选框。 但是,无论我单击什么,保存到数据库的值都不会受到影响。 我的迁移看起来像这样: def self.up create_table :blogposts do |t| t.string :title t.text :body t.boolean :allow_comments, :default => false t.references :author t.references :lasteditor t.timestamps end end 我的观点如下: 哪个产生以下HTML: Allow comments * 控制器只是脚手架生成的默认值。 如果我在迁移中设置了默认值,则该值始终保存在数据库中。 如果我没有设置默认值,则它始终为NULL。 任何人都可以提出解决方案,建议可能出现的问题? 任何建议表示赞赏 谢谢。

Rails validates_presense没有在布尔值上validation?

所以,我有一个表单,使用布尔值来选择男性或女性。 当我使用validates:presense为布尔字段时,它返回,性别不能为空! 我删除了validation部分,它允许它以真或假的方式传入DB。 它没有留下零。 我假设这是一个问题,因为我使用t / f,但我似乎无法弄清楚为什么。 这是我的模特 class Visit < ActiveRecord::Base validates :user_id, :first_name, :last_name, :birthdate, :gender, presence: true end 我对这个领域的看法 false, label: “Gender” %>

Rails:validation包含布尔失败测试

我试图确保我的模型的一个字段是一个布尔值,但我的测试继续失败。 阅读本文后: validationRspec和Rails中的布尔值以及此Rails:如何validation某些内容是否为布尔值? 我最终这样做: class Model { :in => [true, false] } end 我尝试过几种不同的测试方式(使用rspec和shoulda匹配器),而且由于我的测试一直在失败,我现在正在采用最愚蠢的方式(?)。 仍然,测试没有通过,我猜测有一些机制可以在某处转换价值。 以下是我用来了解发生了什么的事情: # create instance without setting value … # these work as expected model_instance.valid?.should be_false # passes model_instance.my_field = true model_instance.valid?.should be_true # passes model_instance.my_field = false model_instance.valid?.should be_true # passes # works as expected model_instance.my_field = “” model_instance.valid?.should be_false […]

检查数组中两个不同数字的总和是否等于变量数?

在Ruby中,我想取一组数字,选择2个不同的数字,将这2个数字加在一起,看看那里的天气等于变量x的变量x。 这是我使用的代码 def arrayIsEqual? (numArray, x) return true if numArray.sample + numArray.sample == x return false if numArray.empty? || numArray.count == 1 end 例如 numArray = [4,2,7,5] x = 11 arrayIsEqual (numArray, n)应返回true ,因为4 + 7 = n(11) 我如何让它工作? 我不希望它是2个随机数,只是任意2个不同的数字加起来n

用sqlite在rails中的布尔值

我仍然是一个仍然使用rails的菜鸟,但我正在遇到一些似乎有些奇怪的东西。 我因此在数据库中为模型添加了一个布尔字段 t.column :admin, :bool, :default => false, :null => false 但是,sqlite3数据库中的值似乎是’t’或’f’ 。 这没关系,但我仍然期望user.admin? 如果值为’f’则返回false。 从下面的控制台会话中可以看出,情况并非如此: >> user = User.first => # >> user.admin? => true >> user.admin = false => false >> user.save => true >> user = User.first => # >> user.admin? => true 这只是sqlite的一些奇怪的问题,还是我没有得到什么?

在Rails中使用布尔值排序

我知道Ruby中的boolean是类。 但是从实际的角度来看,有没有办法通过布尔值对数组进行排序(即,所有元素首先具有真值)? 谢谢。

如何将布尔值转换为整数?

我有一个布尔值来检查它是否为真,然后设置一个局部变量。 我如何重构这一点,以便更多Ruby-ish? if firm.inflection_point inflection_point = 1 else inflection_point = 0 end