草庐IT

argument-validation

全部标签

ruby-on-rails - RSpec 3 : Simple validates_uniqueness_of Failure

我正在尝试在无法通过的模型上测试唯一性验证。我对另一个通过的模型进行了相同的验证测试,但我不明白我在这方面遗漏了什么。我已经在论坛上搜索并尝试了一些东西,但仍然没有通过。我敢肯定这里有一些小而重要的东西要学!这是我的代码..factories.rbFactoryGirl.definedofactory:quotedosequence(:content){|x|"Dustisdirtywordnumber#{x}!"}reference"http://en.wikipedia.org/wiki/Albert_Einstein"author_id1endendquote_spec.rbre

ruby-on-rails - Rails Graphql 解决错误 : wrong number of arguments (given 1, 预期 3)

我使用graphql创建了新的Rails应用程序,但在6个月以上的指南中遇到了很多问题。我怀疑graphql-ruby变化得相当快。所以我在resolve方法中的最后一个问题:moduleTypesclassQueryType(_obj,_args,_ctx){Product.all}endendend错误:wrongnumberofarguments(given1,expected3)/usr/local/var/rbenv/versions/2.5.3/lib/ruby/gems/2.5.0/gems/graphql-1.9.0.pre1/lib/graphql/schema/fi

ruby-on-rails - validates_inclusion_of、acts_as_tree 和 rspec 的问题

我在让rspec正常运行以测试validates_inclusion_of我的迁移时遇到问题,如下所示:classCreateCategories我的模型是这样的:classCategoryCategory.all.map(&:id),:unless=>Proc.new{|c|c.parent_id.blank?}end我的工厂:Factory.define:categorydo|c|c.name"CategoryOne"endFactory.define:category_2,:class=>Categorydo|c|c.name"CategoryTwo"end我的模型规范如下:re

ruby - Sinatra 服务器无法启动 - "wrong number of arguments"

我想尝试Sinatra,因为我听说它对网络开发新手来说比Rails更好......而且总的来说,我更喜欢简约。为此,我使用的是ruby​​2和gem安装获得的任何版本的sinatra。到目前为止我所做的只是基本的require'sinatra'get'/'do'Hello,World!'end尝试使用ruby​​basics.rb运行服务器,它向我抛出这个:/home/ch35hir3/.rvm/gems/ruby-2.0.0-p247/gems/thin-2.0.0.pre/lib/thin/server.rb:108:in`initialize':wrongnumberofargu

ruby-on-rails - 我可以让 validates_uniqueness_of 在 rails 中默默地失败吗?

标题说明了一切......我想要一个列的唯一约束,但如果尝试使用该约束创建记录,就会失败。或者...我应该只使用first_or_initialize/first_or_create吗? 最佳答案 first_or_create/first_or_initialize适用于当您愿意返回现有记录/实例而不是创建/实例化新记录/实例时。如果那是你想要的行为,那么也许你应该走那条路。此答案其余部分的简短版本:“您为什么要编写一个随后会被忽略的约束?这听起来很可疑。”但是既然你说你希望它失败,请考虑以下几点:如果要保持沉默,约束的意义何在?

ruby-on-rails - ruby rails : What to do when two models share a lot of similar validations/validation_methods

我有几个模型都是以“密码”为中心的模型。它们不属于单个继承表,需要在单独的表中进行跟踪。从逻辑上讲,它们是完全不同类型的模型,但都具有密码和密码确认跟踪功能。他们还对密码规则使用相同的业务逻辑,例如密码中的字符数等。在Rails中确保代码是DRY且不会在Rails中重复的最佳方法是什么?我应该考虑做什么? 最佳答案 将通用代码分解成一个模块,然后将模块包含在每个模型类中。 关于ruby-on-rails-rubyrails:Whattodowhentwomodelssharealotof

ruby - 轨道模型 : validates_uniqueness_of doesn't remove trailing spaces not leading ones before unique check?

假设我对用户名实现validates_uniqueness_of。如果名称“maddy”已经存在,那么它将接受值“maddy”作为唯一值而不是“maddy”。它应该删除两侧的空格。如何有这种行为? 最佳答案 classPersonbefore_validation:strip_blanksprotecteddefstrip_blanksself.name=self.name.stripendend这段代码的来源包含一些关于为什么这不是默认的Rails行为的讨论。http://www.ruby-forum.com/topic/1664

ruby-on-rails - 返回 : Validate Non-model fields in model file

我的表单中有一些不属于模型的字段,我知道如何在Controller中验证这些字段,但我想知道是否可以在模型中验证它?如果可能的话,接下来我将如何验证?例如text_field(nil,:non_model_field) 最佳答案 试试这个:在模型中放置一个虚拟属性。classMyModel 关于ruby-on-rails-返回:ValidateNon-modelfieldsinmodelfile,我们在StackOverflow上找到一个类似的问题: http

ruby-on-rails - Rails validates_associated 与模型的错误信息

我在模型中使用validates_associated来使用其他模型的验证代码。问题是验证失败的消息是“..无效”。我想将模型验证失败的实际描述性错误冒泡到顶部!我发现了这个问题:validatesassociatedwithmodel'serrormessage它有一个看起来非常接近的解决方案:moduleActiveRecordmoduleValidationsclassAssociatedBubblingValidatorvalue))endendendendendmoduleClassMethodsdefvalidates_associated_bubbling(*attr_n

sql - 如何在 :conditions argument to ActiveRecord. 查找中使用 %?

我正在尝试执行这样的查询:Widget.find(:all,:conditions=>["namelike%awesome%"])但是,我从sanitize_sql中收到“格式错误的字符串”异常,将“%”指定为问题。如何执行此查询? 最佳答案 试试这个语法:term="awesome"Widget.all(:conditions=>["nameLIKE?","%#{term}%"]) 关于sql-如何在:conditionsargumenttoActiveRecord.查找中使用%?,我