1

我有一个表格来收集报告生成的参数。我知道 formtastic 旨在与模型一起使用,但我需要在这里使用它,因为表单位于 activeadmin 页面中。

一切正常,但我无法为选择设置默认值。我愿意实施“卑鄙的黑客”来使其正常工作。我不希望仅仅为了在表单上设置默认值而实现假模型。

表单代码如下所示

<%= semantic_form_for "report", :url => report_admin_payments_path do |f| %>
  <%= f.inputs do %>
    <%= f.input :report_type, :as => :select, :collection => report_types, :input_html => {:style => "width:180px"}  %>    
    <%= f.input :start_date, :as => :string, :input_html => {:class => 'datepicker', :style => "width:60px", :value => 1.month.ago.strftime("%Y-%m-%d")} %>
    <%= f.input :end_date, :as => :string, :input_html => {:class => 'datepicker', :style => "width:60px", :value => Time.zone.now.strftime("%Y-%m-%d")} %>
    <%= f.input :country, :as => :select, :collection => locales, :input_html => {:style => "width:180px"}%>
  <% end %>
  <%= f.actions :submit %>
<% end %>

提前致谢,

马特

4

1 回答 1

0

这个或类似的东西应该可以满足您的需求。

class LightModel

  # Subclass this for a model that looks like an ar model but has no persistence
  # good for formtastic forms

  include ActiveModel::Naming
  include ActiveModel::Validations

  def initialize(attributes = {})
    @attributes = attributes
  end  

  # read only atm
  def method_missing(m, *args, &block)
    @attributes[m]
  end  

end

谢谢,

马特

于 2012-08-22T05:28:08.073 回答