无法使用Dropdown Association来使用simple_form

时间:2015-01-19 18:32:55

标签: ruby-on-rails twitter-bootstrap simple-form

我使用simple_form表示我的表单,并且我有一个与模板关联的登录页面。我尝试在着陆页表单上显示一个下拉列表,让用户选择着陆页的模板,并在下拉列表中显示模板名称。

以下是我的模特: landing_page.rb

class LandingPage < ActiveRecord::Base
    belongs_to :template
    has_many :leads
    accepts_nested_attributes_for :template

    validates_presence_of :name
    validates_presence_of :title
    validates_presence_of :page_url
    validates_presence_of :template_id
    validates_presence_of :content

end

template.rb

class Template < ActiveRecord::Base
    has_many :landing_pages

    validates_presence_of :template_name
end

以下是我的目标网页表单:

<%= simple_form_for(@landing_page) do |f| %>
  <%= f.error_notification %>

  <div class="form-inputs">
    <%= f.input :name, :input_html => {:maxlength =>50, :style=> 'width: 500px'} %>
    <%= f.input :title, :input_html => {:maxlength =>50, :style=> 'width: 500px'}, label: 'HTML Title'  %>
    <%= f.input :page_url, :input_html => {:maxlength =>50, :style=> 'width: 500px'}  %>
    <%= f.input :template_id, :input_html => {:maxlength =>50, :style=> 'width: 500px'} %>
    <%= f.input :content, :input_html => {:maxlength =>50, :style=> 'width: 500px'}  %>
  </div>

如果我为template_id输入一个整数,它会正确保存到数据库中。但是,我已尝试使用示例找到的每个页面,并且似乎无法为此字段生成下拉列表(集合选择)并让它在下拉列表中显示模板名称。

我看过这些页面: http://simple-form.plataformatec.com.br/ https://github.com/plataformatec/simple_form How to have a collasped drop down list in rails simple_form https://github.com/plataformatec/simple_form/wiki/Nested-Models

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

我让这个工作:

<%= f.association :template, label_method: :template_name, value_method: :id, include_blank: true, :input_html => {:maxlength =>50, :style=> 'width: 500px'} %>