2011-05-14 49 views
1

我开始为rails应用程序使用simple_form,并且在转换一些表单时,我遇到了一个有两个模型的工作,它们是嵌入式表单。这可能与simple_form?rails simple_form两个模型

<% simple_form_for :topic, :url => forum_topics_path do |t| %> 
<%= t.input :name, :label => 'Topic' %></p> 

<p>First Post:<br/></p> 
Title: <%= text_field :post, :title %> <--- this is where i start having problems 
Body: <%= text_area :post, :body %> 
<%= t.submit 'Save' %> 

感谢

回答

8

使用simple_fields_for

<%= simple_form_for :topic, :url => forum_topics_path do |topic_builder| %> 
    <%= topic_builder.input :name, :label => 'Topic' %> 
    <%= topic_builder.simple_fields_for :post do |post_builder| %> 
    <p>First Post:</p> 
    <%= post_builder.input :title, :input_html => { :size => 30 } %> 
    <%= post_builder.input :body, :as => :text, :input_html => { :rows => 20, :cols => 50, :class => 'resizable' } %> 
    <% end %> 
    <%= topic_builder.submit 'Save' %> 
<% end %> 

  • 注意,在<%= simple_form_for ...<%= simple_fields_for=符号(用Rails 3.x的要求)

  • 删除“Title:”和“Body:”文本。使用为输入生成的标签,并根据需要使用CSS对其位置进行样式设置。使用input_html