首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >validates_acceptance_of不为复选框工作

validates_acceptance_of不为复选框工作
EN

Stack Overflow用户
提问于 2019-08-03 06:06:28
回答 1查看 143关注 0票数 0

在过去的三个小时里,我正在尝试各种选择,以使“条款和条件”复选框生效。

这是我的代码/模型/user.rb

代码语言:javascript
复制
class User < ActiveRecord::Base
  #validates :terms, acceptance: { accept: true } , :on => :create
  validates_acceptance_of :terms, :allow_nil => false,  :accept => true, :on => :create
end

这就是我一直得到的

html看起来如下

我添加这个是为了允许对角

代码语言:javascript
复制
class ApplicationController < ActionController::Base

  before_action :configure_permitted_parameters, if: :devise_controller?
  # for allowing terms in signup 
  protected

  def configure_permitted_parameters
    devise_parameter_sanitizer.permit(:sign_up, keys: [:terms])
  end

end

“‘rails”,“4.2.8”

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-08-03 12:29:20

您要将1作为复选框值传递。这是验证器的默认设置。所以,您所需要的就是摆脱:accept => true选项。true 1仅用于验证布尔数据库字段。据我所知,用户表中没有这样的列,您只想引用HTML复选框。

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

https://stackoverflow.com/questions/57335877

复制
相关文章

相似问题

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