我使用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
非常感谢任何帮助。
答案 0 :(得分:0)
我让这个工作:
<%= f.association :template, label_method: :template_name, value_method: :id, include_blank: true, :input_html => {:maxlength =>50, :style=> 'width: 500px'} %>