내 앱에는 많은 고객이 작성한 의견이 있습니다. 여기에 협회와 모델입니다 : 매개 변수에서레일 : belongs_to 두 개의 다른 모델에 대한 새로운 항목
class Product < ActiveRecord::Base
attr_accessible :name, :desc, :price
has_many :opinions
end
class Client < ActiveRecord::Base
attr_accessible :name, :bio
has_many :opinions
end
class Opinion < ActiveRecord::Base
attr_accessible :rate, :comment
belongs_to :client, :product
end
, 나는 (내가 그들 모두를 고려) 나 PRODUCT_ID 및 CLIENT_ID 모두를 얻을하는 데 도움이 평가 초대 ID를 보유하고 있습니다.
양식에 rate (radio_button, 1 ~ 5) 및 주석 (text_field) 만 포함됩니다.
메소드 opinion # create는 클라이언트 및 제품의 두 모델에 속하는 새로운 의견을 어떻게 작성합니까? 내 응용 프로그램의 첫 번째 버전에서, 의견은 제품에 속한다 :
내가 직접이 CLIENT_ID 및 PRODUCT_ID 통과했지만, 나는 MassAssignment 오류 얻을 :
# Remember: I have product_id and client_id
product = Product.find_by_id product_id
opinion = product.opinions.build params[:opinion]
opinion.product_id = product_id
opinion.client_id = client_id
opinion.save
이런 경우에 유용 할 수 있습니다 위의 코드 (opinion.client_id = client_id
줄 삭제)를 사용하면 잘 작동합니다. 그래서 나는 product
을 사용하여 의견을 작성했습니다.) 그래서 이것은 단지 향상 일뿐입니다.
아이디어가 있으십니까? 미리 감사드립니다.
오류 메시지를 게시 할 수 있습니까? (그것이 질량 할당 임). 그냥 메시지를 확인해야합니다. – MurifoX