我有兩個表,電影和喜歡。 電影has_many :likes, dependent: :destroy, foreign_key: "movie_id"
和一個像belongs_to :movie
Rails協會
在喜歡控制器 有兩個動作:uplikes (where :vote=>1)
和dislikes (where :vote=>2)
在movies/show.html.erb
我顯示uplikes的量和不喜歡的電影有 這樣:
- 查看show.html.erb
<%= @uplikes.size %>
<%= @dislikes.size %>
- 控制器
def show
@uplikes = Like.where(:movie_id => params[:id], :vote => '1')
@dislikes = Like.where(:movie_id => params[:id], :vote => '2')
這工作得很好。 現在我有什麼問題,在索引操作調用時顯示電影的好惡和uplikes量movies.each
我從def show
動作粘貼上面的控制器代碼爲def index
行動和改變params[:id]
到params[:movie_id]
但是,當我打電話
<%= @uplikes.size %>
<%= @dislikes.size %>
到視圖,它只是顯示0
如果我能在控制器擺脫:movie_id => params[:id],
,它就會顯示所有uplikes的數量和不喜歡的所有的電影,而不是具體的一個。
任何人都有答案?
感謝
使用':vote => 1'而不是傳遞字符串':vote =>'1'' – MrYoshiji
不,這不會改變任何東西 – PMP
你怎麼知道你想在索引動作中顯示喜歡的影片?通常索引動作顯示所有電影,並且通常不會帶有ID參數 – Slicedpan