Tag: boolean

如何在同一索引页上的单独表中显示真/假布尔值?

我能够在_form中检查布尔值,但是“目标”只显示在“已完成”目标表中,而不是在其上方的目标表中(无论是否已检查)。 如何在顶部表格中显示虚假目标(未完成核对的目标)和底部表格中的真实目标(已完成核对的目标)? 对于代码炸弹丢弃感到抱歉,我是布尔和范围的新手,所以我想确保我展示了解决这个问题可能有用的所有代码,因为我投入了我认为可能有用的随机内容。 index.html.erb GOALS <span class="glyphicon glyphicon-plus" ACCOMPLISHED goal.rb class Goal { where(accomplished: true) } end create_goals.rb class CreateGoals < ActiveRecord::Migration def change create_table :goals do |t| t.string :name t.date :deadline t.boolean :accomplished t.timestamps null: false end end end schema.rb(部分) create_table “goals”, force: true do |t| t.string “name” t.date “deadline” t.boolean “accomplished”, default: false […]

在ActiveRecord中断开

是否可以使用ActiveRecord named_scope来创建一个带有sql OR子句的查询? 我用的时候 Model.scope1.scope2 生成的查询是这些范围的结合。

在Rails ActiveRecord中分配给布尔字段时如何转换值?

我的问题的简短版本 在Rails ActiveRecord中,如果我有一个布尔字段并且我给它分配了类似“ abc ”或2东西,那么它会立即转换为false 。 值1为true , nil保持为nil 。 为什么会这样? 我在哪里可以找到解释此行为的Rails文档(或Ruby文档)? 我的问题的长版本 我很难理解Rails如何处理为Rails模型中的Boolean字段赋值的尝试。 例如,假设我有一个Website模型,其中包含一个名为:domain的String字段和一个名为:can_ssl的Boolean字段。 我的迁移看起来像这样: class CreateWebsites false t.timestamps end end end 在我的模型文件中,我添加了一些validation规则,所以它看起来像这样: class Website true validates :can_ssl, :inclusion => { :in => [true, false] } end 很简单。 基于我所做的,我期待 :can_ssl只能设置为值true或false ,而不是其他任何东西。 还有其他什么会导致valid? 是false 。 但是一旦我开始在控制台中玩游戏,我注意到,早在实际的赋值语句中,我提供的值正在重新转换为true或false (或nil )。 有关如何将值转换为Boolean值的规则是什么? 控制台的示例: w = Website.new w.domain = […]

检查模型实例是否属于rails中的named_scope

假设我有一个命名范围: class Foo ‘some_field = 1′ end 这适用于查询,我定义了一堆有用的named_scopes。 我想要的是能够做到这一点: f = Foo.find(:first) f.some_field = 1 f.is_bar? #=> true 酒吧?’ 如果模型实例属于命名范围,则method将简单地返回true或false。 不管怎么说没有写’is_bar’吗? 即使我已经写了一个很好的方法来检查’is_bar’是否有问题? 如果我没记错的话,DRY很好,所以任何帮助都会非常感激/

Rails数据库布尔值

代码优先: create_table :users do |t| … t.boolean :is_active, :default => true … end 现在,这是我的问题 – 我正在创建一个rake任务来导入大量的记录(10,000+)。 我已经做了大量的测试和基准测试,并确定执行此任务的最快和最有效的方法是创建一个巨大的原始SQL语句。 (我正在从CSV读取数据)。 举个例子: inserts = Array.new FasterCSV.foreach(…) do |row| inserts.push “(row[0], row[1]…)” end User.connection.execute “INSERT INTO users (…) VALUES #{inserts.join(“, “)}” 一切都很好。 整个过程在(字面上)秒内完成,而不是使用ActiveRecord完成1.5小时。 但是,我的问题在于布尔字段。 我在SQLite上本地开发,但在生产中使用MySQL。 当使用ActiveRecord时,Rails确定要在“布尔”字段中放置什么(因为几乎所有数据库都不同)。 我正在编写自定义SQL,我想知道是否有办法可以做类似…… INSERT INTO users(…, is_active, …) VALUES (…, ActiveRecord::Base.connection.boolean.true, …) …正确返回特定于数据库的布尔值。 任何回答“只使用ActiveRecord”的人都将被拒绝投票。 在这种情况下,这根本不可行。 […]

如何在一天结束时将布尔值重置为“default:false”?

我在DB中有一个布尔值: t.boolean “completed”, default: false 我只在主页上显示那些仍然是false的。 如果用户选中一个: 完成变为true ,因此它从主页上消失。 但是,在每一天结束时,我们如何自动将所有内容重置为default: false ? 我是否要创建模型方法或范围来执行此操作?

独家或ruby的关键字?

Ruby是否具有普通英语关键字,或者像“and”和“or”一样? 如果不是,这是因为排他性还是不允许评估短片?

如何在Rails中的某些情况下实现是/否而不是布尔值?

我是编程的新手,但在我的应用程序中,我希望某些情况显示“是”或“否”而不是“真”或“假”。 我不确定这样做的最好方法,我读了这个问题,但并不真正理解如何实现它。 有人可以帮助我,最好把它放在初始化器,帮助器或其他地方吗? 我希望能够在我的视图中调用某些内容,无论我想要显示是/否,或者创建自定义数据类型,在我的migation中,我可以创建类似t.boolean_yesno的内容,然后为每个列创建对它来说,它只会将真实存储为是,而将虚假存储为否定。 我很感激帮助我走上正轨,我没有初始化者或助手的经验。 谢谢!