ruby on rails - undefined local variable in nested resource form -
i'm trying build nested resource form simple_form.
i have 2 classes:
class product < activerecord::base has_one :product_review, dependent: :destroy end class productreview < activerecord::base end i added routes , in routes have
admin_product_product_reviews /admin/products/:product_id/product_reviews(.:format) admin/product_reviews#index post /admin/products/:product_id/product_reviews(.:format) admin/product_reviews#create new_admin_product_product_review /admin/products/:product_id/product_reviews/new(.:format) admin/product_reviews#new edit_admin_product_product_review /admin/products/:product_id/product_reviews/:id/edit(.:format) admin/product_reviews#edit admin_product_product_review /admin/products/:product_id/product_reviews/:id(.:format) admin/product_reviews#show patch /admin/products/:product_id/product_reviews/:id(.:format) admin/product_reviews#update put /admin/products/:product_id/product_reviews/:id(.:format) admin/product_reviews#update delete /admin/products/:product_id/product_reviews/:id(.:format) admin/product_reviews#destroy i need create form build , edit product_review.
i create button:
= link_to new_admin_product_product_review_path(product) and create form
= simple_form_for [product,product_review], url: admin_product_product_review_path |form| but returns me error:
undefined local variable or method `product' #<#<class:0x007fbaf54d1720>:0x007fbae974ea90> what's problem?
you relation association wrong. if have "has_one" in 1 model should have "belongs_to" in other.
then should find product want add review to. "@product"
then build review product. build_association
http://guides.rubyonrails.org/association_basics.html
model
class productreview < activerecord::base belongs_to :product end controller
@product = product.find(params[:id]) view
form_for (@product,@product.build_product_review)
Comments
Post a Comment