我對軌道非常陌生,並且正在網上商店工作,只是爲了編寫一些軌道。我有一個評論表單,需要一個隱藏字段來傳遞產品ID。出於某種原因,我無法訪問表單中的「產品」實例變量。Rails - 無法以形式訪問實例變量
的形式爲:
<%= form_for @comment, remote: true do |f| %>
<%= f.label :title %>
<%= f.text_field :title %>
<%= f.label :comment %>
<%= f.text_area :comment %>
<%= f.label :rating %>
<%= f.text_field :rating, value: 5 %>
<%= f.hidden_field :product_id, :value => @product.id %>
<%= f.button :submit %>
<% end %>
我呈現形式與new.js.erb文件:
$('#comment-form').html("<%= j (render 'layouts/review_form') %>");
$('#comment-form').slideDown(350);
這是扳機連桿和DIV:
<%= link_to 'Write a review', new_comment_path, remote: true %>
<div id="comment-form" style="display:none;"></div>
當我擺脫hidden_field時,一切都像其假設的t OO。有任何想法嗎?
謝謝:)
你能告訴我們什麼樣的錯誤你得到時hidden_field線是否存在?你還可以在這個問題中添加導致表單呈現的動作(在控制器中)嗎?謝謝! – ConnorCMcKee
這是錯誤:ActionView :: Template :: Error(對於nil:NilClass,未定義的方法'id'): 我的控制器只包含索引,新建和創建方法,沒有其他 –
所以這可能是New action ,對嗎?在這種情況下,您需要確認New操作定義了產品(它向您提供的原因是該產品未針對與此視圖對應的操作進行定義)。 – ConnorCMcKee