2017-04-21 110 views
0

我有一個表reviewsusersmovies都有很多評論。審查是參考movieuser的元組(id, movie_id, user_id, rating, comment)。如果在movie顯示頁面上,我添加一個按鈕「發表評論」,鏈接到new_review_path,我將如何強制訪問並設置user_idmovie_id引用來自reviews_controller的內部?如何創建引用兩個其他對象的新模型對象?

回答

1

我假設一個Review對象屬於兩個UserMovie的時間,對於這種情況下,你可以使用嵌套路由讓movie_id在URL

resources :movies do 
    resources :reviews 
end 

然後查看器裏面,您可以獲取Movie對象通過,

movie = Movie.find(params[:movie_id]) 

而且我假設User對象是current_user,如果是這樣的話,你可以這樣做

Review.new(movie_id: movie.id, user_id: current_user.id) 

希望幫助!

+0

是的,確切!謝謝!另外,如何將我的評級和評論與ID一起傳遞到Review.new調用中?我可以訪問'review_params',我可以從那裏訪問嗎? –

+0

您可以創建一個表單將這些值傳遞給動作,如果您有疑問,可以爲此添加單獨的問題。 – RSB

0

如果usermovies都有reviews那麼你可以使用polymorphic associations瞭解更多詳情請查看RailsCast OR Rails guide

相關問題