0
我使用的是不工作,在回顧#新的動作部分觀點,我有一個從和我打電話後局部視圖:未定義的方法`MODEL_NAME」的陣:類,部分觀點
<%= form_for @review do |f| %>
<div>
<%= field_with_error @review, :content do %>
<%= f.label :content %><br />
<%= f.text_area :content %>
<% end -%>
</div>
<%= field_with_error @review, :score do %>
<%= f.label :score %>
<%= f.text_field :score %>
<% end -%>
<p><%= submit_tag 'Post Review'%> </p>
<% end %>
</div>
<ul >
<%= render :partial => "post", :locals => {:review => @reviews} %>
</ul>
回顧#新的控制器:
def new
@review = Review.new(:restaurant_id => params[:restaurant_id])
@reviews = Review.all
end
和審查#彥博的樣子:
<%= content_tag_for(:li, review) do %>
<p ><%= "#{review.first_name}" %></p>
<p ><%= review.content %></p>
<span >Posted at <%= review.created_at %> ago.
(<%= link_to 'Delete', post, :confirm => 'Are you sure?', :method => :delete %>)</span>
<% end %>
它給出了一個錯誤:
undefined method `model_name' for Array:Class
我想我做某事錯的局部視圖,謝謝你提前:)
非常感謝您的回覆:),我嘗試了第二個評論,它仍然給我同樣的錯誤:未定義的局部變量或方法'審查'爲#<#:0x13246f838> –
GoodOne
2012-08-01 19:50:53
抱歉,是我的錯。從文檔中:「當一個部分被複數集合調用時,那麼該部分的單個實例可以通過一個以部分*命名的變量來訪問正在呈現的集合的成員*。」所以它尋找一個名爲'post'的變量,因爲你的部分文件被命名爲'_post'。你可以改變文件名'_review'?無論如何,這將更有意義。 – 2012-08-01 21:53:52