如何解决改革 Rails - 验证 - 错误的数字参数
我第一次尝试使用 reform-rails
gem 进行改革。我试图将它用作表单对象,进行一些验证,然后将其保存到数据库中。当我尝试指定验证时,即使我尝试自己的示例之一,它也会出错。
宝石文件:
gem 'reform'
gem 'reform-rails'
gem 'dry-validation'
config/initializerrs/reform.rb
require 'reform/form/dry'
Reform::Form.class_eval do
feature Reform::Form::Dry
end
Rails.application.config.reform.validations = :dry
app/forms/album_form.rb:
class AlbumForm < Reform::Form
feature Reform::Form::Dry
property :name
validation do
required(:name).filled
end
property :artist do
property :name
validation do
required(:name).filled
end
end
end
命令行:
AlbumForm.new(Album.new)
Traceback (most recent call last):
3: from (irb):1:in `<main>'
2: from app/forms/album_form.rb:1:in `<main>'
1: from app/forms/album_form.rb:6:in `<class:AlbumForm>'
ArgumentError (wrong number of arguments (given 1,expected 0))
第 6 行是 validation do
。我错过了什么吗?
解决方法
截至今天,改革(和改革 Rails)不支持 Ruby 3。更新似乎即将发布。除了一项测试外,所有测试都通过了。失败的测试似乎与 Representable gem 相关。
的 Yogesh Khater 所说的版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。