私は、has_many: through:
相互に関係するモデルとハッシュタグと投稿を使用して、一種の Twitter クローンを構築しています。
現在、アクセスすると、ハッシュタグ#pizza/hashtags/pizza
のハッシュタグが付いたすべての投稿を表示するページが表示されます。URL で複数のハッシュタグを渡して、それらすべてのハッシュタグを含む投稿を表示できるように機能を追加したいと考えています。たとえば、アクセスした場合(または実装が最も簡単なものにアクセスした場合)、ハッシュタグ#pizzaとハッシュタグ#pastaの両方を持つすべての投稿を含むページが表示されます。/hashtags/pizza/pasta
hashtags/?pizza&pasta'
どうすればいいですか?どこから始めればよいかわかりません。
記録のために、コントローラー内の私の想像上のコードは次のようなものになります。自由に穴を開けてください:
1 def show
2 requested_hashtags = ??????? # an array of hashtags e.g. ["music", "guitar"]
3 hashtag1 = Hashtag.find_by_name(requested_hashtags[0]) # in this case r_h[0] = music
4 hashtag2 = Hashtag.find_by_name(requested_hashtags[1]) # and r_h[1] = guitar
5 @posts = hashtag1.posts & hashtag2.posts
6 end
次に、私の見解では、 を反復処理するだけ@posts
です。(上記の例は、要求されたハッシュタグが常に 2 つだけあると仮定しているという点で馬鹿げていますが、原則は同じです。)
私の質問は、上記のコード スニペットの2行目を完成させる方法を教えてください。