我在rails中使用的db中有多對多的關係。在rails中處理多對多的關係
說我有一個模式,看起來像這樣:
電影院
- cinema_id
- 命名電影
- movie_id
- 命名個放映時間
- showtime_id - 時間戳 - movie_id - cinema_id
所以basicaly:[電影院] 1 - N [放映時間] N - 1 [影]
在之一我的網頁我有一個電影編號,並希望根據cinema_id顯示電影並將每部電影的放映時間分組。我不確定如何正確處理這個問題。在.Net中,我將使用SelectMany linq運算符並創建一組電影,但這似乎不存在於ruby/rails中。要做到這一點,我認爲
一個辦法是做這樣的事情:
@showtimes = Showtime.where(:cinema_id, cinema_id)
@showtimes.each do |st|
@movies.add(st.Movie) unless @movies.include? st.Movie
end
這將工作...但它似乎......醜,它僅僅是我嗎?
非常有趣。我今晚會檢查這個。 – Erick 2013-04-08 19:54:01