首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Ruby on Rails: dry-schema dry-validation validation

Ruby on Rails: dry-schema dry-validation validation
EN

Stack Overflow用户
提问于 2019-07-27 04:46:46
回答 1查看 825关注 0票数 1
代码语言:javascript
复制
module QleKinds
  class CreateParamsValidator < MyCustomClass
    define do
      required(:title).value(:filled?)
    end
  end
end

我在一个rails应用程序中使用了dry-validation和dry-schema,并实现了用来检查如何检查title属性是否存在的建议。尽管如此,在做了上面的工作之后,它仍然说

代码语言:javascript
复制
#<Dry::Schema::Result{} errors={:title=>["is missing"]

但是,title属性肯定包含在发送的原始params中。有人有什么建议吗?

以下是发送的原始参数,其中明确包含'title':

代码语言:javascript
复制
[1] pry(#<Admin::QleKinds::CreateService>)> qle_kind_data
=> <ActionController::Parameters {"effective_on_kinds"=>["date_of_event"], "end_on"=>"06/01/2005", "event_kind_label"=>"Date of birth", "is_self_attested"=>"true", "market_kind"=>"shop", "post_event_sep_in_days"=>"1", "pre_event_sep_in_days"=>"1", "questions_attributes"=><ActionController::Parameters {"0"=><ActionController::Parameters {"answer_attributes"=><ActionController::Parameters {"responses_attributes"=><ActionController::Parameters {"0"=><ActionController::Parameters {"name"=>"true", "result"=>"contact_call_center"} permitted: true>, "1"=><ActionController::Parameters {"name"=>"false", "result"=>"contact_call_center"} permitted: true>, "2"=><ActionController::Parameters {"operator"=>"before", "value"=>"", "value_2"=>""} permitted: true>, "3"=><ActionController::Parameters {"name"=>"", "result"=>"proceed"} permitted: true>} permitted: true>} permitted: true>, "content"=>"When was Your Dog Born?", "type"=>"date"} permitted: true>} permitted: true>, "reason"=>"birth", "start_on"=>"06/01/1990", "title"=>"Got a New Dog", "tool_tip"=>"Household adds a new dog for emotional support"} permitted: true>
[2] pry(#<Admin::QleKinds::CreateService>)> qle_kind_data["title"]
=> "Got a New Dog"
EN

回答 1

Stack Overflow用户

发布于 2019-07-31 00:29:43

不支持ActionController::Parameters,您需要先将它们强制为散列。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57226805

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档