1

我使用客户端验证 gem 及其 simple_form 插件进行客户端验证。我有一个ActiveModel::Validations包含的自定义模型并使用 simple_form 来填充它。

<%= simple_form_for @solution, :validate => true, :url => solve_problem_path, :html => { :class => 'form-horizontal' } do |f| %>
  <% @solution.fields.each do |label| %>
    <%= f.input label, :validate => { :presence => true } %>
  <% end %>
  <div class="form-actions">
    <%= f.submit 'Solve', :class => 'btn btn-primary' %>
  </div>
<% end %>

定制型号:

class Solution < OpenStruct
    include ActiveModel::Validations

    validate do
      @table.each do |key, val|
        errors.add(key, :blank) if val.blank?
      end
    end
    def fields
      @table.keys
    end
  end

但是客户端验证不起作用(服务器端起作用)。

4

0 回答 0