草庐IT

bool_constant

全部标签

ruby-on-rails - Rails has_many :through Uninitialized constant

我正在寻找有关调试Railshas_many:through关联问题的帮助。我有3个模型,Package、Venue和我的连接表Packagevenuepackage.rbclassPackage地点.rbclassVenuepackagevenue.rbclassPackagevenuepackagevenues表的架构create_table"packagevenues",force::cascadedo|t|t.integer"package_id"t.integer"venue_id"t.datetime"created_at",null:falset.datetime"upd

ruby - bool 检查字符串是否与 ruby​​ 中的正则表达式匹配?

在ruby​​中,我看到很多代码都在做这样的事情:deftest(s)s=~/Macintosh/end测试字符串是否匹配正则表达式。但是,这会返回一个fixnum或nil,具体取决于它是否找到匹配项。有没有办法做同样的操作,但它返回一个bool值来判断它是否匹配?我想到的两个可能的解决方案是!(s=~/Macintosh/).nil?和!(s!~/Macintosh/),但是这些似乎都不太可读。有没有类似的东西:deftest(s)s.matches?(/Macintosh/)end 最佳答案 你可以使用这个:deftest(s)

ruby-on-rails - 自定义 bool 文本?

如果在我的BusinessStore模型/表中我有bool值:create_table:business_storesdo|t|t.boolean:online_storeend在我看来,我希望它说“在线”而不是字符串形式的true或false:如何实现? 最佳答案 我按照规则将逻辑排除在View之外,因此我将在BusinessStore模型中创建一个方法:defBusinessStore然后在View中 关于ruby-on-rails-自定义bool文本?,我们在StackOverfl

ruby-on-rails - Rails 使用 constantize 获取模块

我在模块的命名空间下有一个类,比如说Module::Klass我能够从控制台访问Klass,它给了我:Module::Klass但是,如果我尝试使用:"klass".constantize#CallingconstantizeonString它会出错,因为它没有附加模块命名空间。所以,我的问题是:有没有一种方法可以根据其当前上下文将字符串常量化,以便我收到类名称及其模块? 最佳答案 如果“当前上下文”是指您当前在该模块中,则可以直接访问其常量。moduleFooclassBarendself.const_get('Bar')#=>F

ruby-on-rails - 事件管理字段上的 bool 值返回空而不是 true 或 false (Rails 3.2/Active Admin)

我正在构建一个日常交易应用程序来训练学习RoR。在我的Deal表单上,我有一个名为“featured”的bool字段。如果我选中该复选框,则该交易会被列为特色(而不是草稿)。但是当我在事件管理员上创建我的交易时,如果我选中该复选框,我会得到“真”(那部分没问题),但如果我不选中它,我就会变得“空”而不是“假”。我不应该得到false吗?这是我的文件:模式迁移:create_table"deals",:force=>truedo|t|t.string"title"t.string"description"t.boolean"featured"t.integer"admin_user_id

ruby - Sequel 数据集的 bool 组合

鉴于我有一些数据集方法foo,bar和bazclassUser42,:d=>23)enddefbar#Evenmorecomplicateddatasetherewhere(:a=>5,:b=>23).or(:a=>23,:b=>5)enddefbazwhere(:d=>17)endendend我想在数据库中查询(foo||bar)&&(bar||baz)(或其他一些复杂的数据集)。所以我尝试了User.where{|u|(u.foo|u.bar)&(u.bar|u.baz)}编辑:澄清:我得到了什么SELECT*FROMusersWHERE((`foo`OR`bar`)AND(`ba

ruby - "uninitialized constant OpenSSL::PKey::EC"来自 CentOS 6.6 上的 Ruby

我有一个使用openid_connectgem的Rails服务器应用程序。当我尝试在CentOS6.6上运行它时,我得到:uninitializedconstantOpenSSL::PKey::EC这是完整的堆栈跟踪:$railsserver/home/foo/.rvm/gems/ruby-2.1.3/gems/json-jwt-1.5.1/lib/json/jwk/jwkizable.rb:69:in`':uninitializedconstantOpenSSL::PKey::EC(NameError)from/home/foo/.rvm/gems/ruby-2.1.3/gems/j

ruby - rhc 安装程序返回 "warning: constant::TimeoutError is deprecated"

环境Ubuntu16.04xenialLinux内核:4.4.0-22-genericruby--versionruby2.3.0p0(2015-12-25)[x86_64-linux-gnu]复制步骤sudoapt-getinstallruby-fullrhcsetup返回:/var/lib/gems/2.3.0/gems/commander-4.2.1/lib/commander/user_interaction.rb:328:warning:constant::TimeoutErrorisdeprecated上传default公钥后,显示:Checkingforgit...fou

ruby-on-rails - 名称错误 : uninitialized constant

我在Rails中进行单元测试......这是我的代码位于test\unit\sample_test.rbrequire'test_helper'require'test/unit'require'sample'classSampleTest我的app\models\sample.rb包含以下内容..,classSampledefassert_student(student)#assert_equal"123",student.external_reference"#{student_id}"endend当我运行“raketest:units”时,它显示了以下错误test_student

ruby rubocop : how to freeze an array constant generated with splat

我正在分配一个这样的数组常量:NUMS=*(2..9)Rubocop说C:卡住分配给常量的可变对象。NUMS=*(2..9)^^^^^所以我试试NUMS=*(2..9).freezeRubocop说C:卡住分配给常量的可变对象。NUMS=*(2..9).freeze^^^^^^^^^^^^尝试过NUMS=(*(2..9)).freezeRubocop说E:意外的标记tRPAREN(使用Ruby2.0解析器;在AllCops下使用TargetRubyVersion参数进行配置)NUMS=(*(2..9)).freeze^尝试过NUMS=[1,2,3,4,5,6,7,8,9].freeze