带有simple_form gem的Hstore错误消息-Ruby on Rails

我有一个嵌套的表单:

= simple_form_for(@item) do |f|
  = f.input :name

  -# nested form
  = f.simple_fields_for :content,OpenStruct.new(@item.content) do |builder| 
    - @item.category.fields.each do |field|
      = render "items/fields/#{field.field_type}",field: field,f: builder

我想在必填字段下显示错误消息(如果为空)。当前,在我的Item模型中,我有一个验证块来检查hstore字段是否为必填字段,是否为空:

serialize :variations,Hash
store_accessor :variations
validate :validate_variations
validates_presence_of :name

def validate_variations
  category.fields.each do |field|
    if field.required? && variations[field.name].blank?
      errors.add field.name,"must not be blank"
    end 
  end
end

如果我使用一个简单的错误块,则上面的代码可以完美地工作:

- if target.errors.any?
  - target.errors.full_messages.each do |message|
    = message

但是当我要使用simple_form错误消息时,它不会触发任何操作。我的hstore字段:

= f.input field.name,error: "Please enter a valid #{field.name}"

有什么方法可以显示当前字段下方hstoresimple_form字段的错误消息?


Ruby:2.7.1, 滑轨:6.0.3

tickerly 回答:带有simple_form gem的Hstore错误消息-Ruby on Rails

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/2337734.html

大家都在问