【问题标题】:How to disable server side validation of nested form in rails如何在rails中禁用嵌套表单的服务器端验证
【发布时间】:2019-09-08 18:08:41
【问题描述】:

我已经对嵌套表单进行了服务器端验证。每个都有模型并在给定的服务器端验证中。 但是,保存时模型服务器端验证工作的主要形式,我已禁用它。 但是,我也禁用了嵌套表单模型服务器端验证,但它不起作用。

 validates_presence_of   :user_mob, :message => 'please enter the mobile number.' ,unless: :skip_valid
    validates_presence_of   :address, :message => 'please enter the address.', unless: :skip_valid

//这是主模型

类用户详细信息 'u_id'

validates_presence_of :year, :message => 'please enter the details.', unless: :skip_valid
validates_presence_of :user_name, :message => 'please enter the details.', unless: :skip_valid
validates_presence_of :user_address, :message => 'please enter the details.', unless: :skip_valid
validates_presence_of :user_mobile, :message => 'please enter the details.', unless: :skip_valid
validates_presence_of :user_type, :message => 'please enter the details.', unless: :skip_valid

结束

即使我给出了除非:在 netsted 表单模型中的 skip_valid。它不工作。 如何禁用嵌套表单模型服务器端验证。

【问题讨论】:

  • 跳过验证最简单的方法是调用save(false) false 表示您不想运行验证
  • 另外,我在保存时将跳过验证设为 false,直到尚未工作

标签: javascript jquery ruby-on-rails ruby-on-rails-4


【解决方案1】:

validates_presence_of :year, :message => 'please enter the details.', if: ->(u) { u.commit == 'submit' or u.commit == 'approve' or u.commit == '重新申请'}

我们可以这样做。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-11-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多