form_for方法使用slim

时间:2012-10-30 16:01:01

标签: ruby-on-rails slim-lang

我看过苗条的文档,我仍然无法弄清楚如何做到这一点:

<%= form_for([@post, @post.comments.build]) do |f| %>
  <div class="field">
    <%= f.label :commenter %><br />
    <%= f.text_field :commenter %>
  </div>
  <div class="field">
    <%= f.label :body %><br />
    <%= f.text_area :body %>
  </div>
  <div class="actions">
    <%= f.submit %>
  </div>
<% end %>

我尝试翻译第一行

= form_for([@post, @post.reviews.build]) do |f|

但是我收到了语法错误。

2 个答案:

答案 0 :(得分:27)

之前遇到过类似的问题,我想你只需要一些子元素!试试这个:

= form_for([@post, @post.comments.build]) do |f|
  div.field
    = f.label :commenter
    br
    = f.text_field :commenter
  div.field
    = f.label :body
    br
    = f.text_area :body
  div.actions
    = f.submit

答案 1 :(得分:0)

马里奥写道:

  

= form_for([@ post,@ post.comments.build])做| f |         div.field           = f.label:评论者           br           = f.text_field:评论者         div.field           = f.label:身体           br           = f.text_area:body         行动           = f.submit

Div不是必需的。所以我会做:

= form_for([@post, @post.comments.build]) do |f|
  .field
    = f.label :commenter
    br
    = f.text_field :commenter
  .field
    = f.label :body
    br
    = f.text_area :body
  .actions
    = f.submit