ruby-on-rails - form_with 客户端验证
问题描述
我正在使用客户端验证gem。并按照说明运行了所有说明以使验证正常工作,但验证不适用于我的表单。
我的表格:
<%= form_with(model: profile, local: true, method: :patch, multipart: true, validate: true) do |form| %>
我已经validate: true
按照文件上的说明放了。
而不是在我的模型中进行验证:
validates :name, :email, presence: true, length: { maximum: 10 }, if: :can_validate?
def can_validate
true
end
医生说您可以强制使用我所做的表格:
在我的文本字段中,我应用了验证:
<%= form.text_field :name, validate: { presence: true }, id: :profile_name, class:"input is-large" %>
但是验证根本不起作用,没有错误消息。
解决方案
我创建了一个 repo 来自己重现您的问题:
https://github.com/wmavis/so_rails_client_side_validations
如果我使用 form_for,看起来 client_side_validations 对我有用,但如果我使用 form_with,它对我不起作用:
搜索“ client_side_validations form_with
”出现了这个链接:
https://github.com/DavyJonesLocker/client_side_validations/issues/696
对您来说,最简单的解决方案似乎是使用 form_for。如果您需要使用 form_with,似乎开发人员可能正在研究解决方案,或者在另一个分支上进行了编码。
让我知道它是否有效或您是否需要更多帮助。
推荐阅读
- jquery - 使用按钮编辑选择列表复选框项目 Asp.net core
- python - 在dict中将键从float转换为int in dict in list in dict
- c - “printf”可以用作变量名吗?
- visual-studio-2019 - 打开 Visual Studio 时 CPU 会发热 - 即使项目文件为空
- python - 替换熊猫系列中元素的特定字符
- azure-devops - Azure DevOps YAML Pipeline 无法识别“作业:”或“阶段:”标记/名称,如可用语法中所述
- excel - 如果用户的 OneDrive 使用量超过阈值,请发送电子邮件
- android - 我们可以使用同一个 Play 商店帐户在不同的应用内帐户中购买相同的产品吗?
- javascript - 如何根据我单击的按钮的行从表的行中查找值
- amazon-iam - 如何在 SQS 中为访问策略添加正确的权限