2016-11-05 12 views
0
<% @user.chores.each do |chore| %> 
<li><%= chore.name %></li> 
<% end %> 


<% @user.chorelists.each do |chorelist| %> 
<li><%= chorelist.day %></li> 
<% end %> 

ホラ、お友達。条件付きの属性の結合

私のアプリには、User、Chore、Chorelistという3つのモデルがあります(これは、UserとChoreの '結合された'リソースです)。

これらのブロックはどちらも機能しますが、特定の日のそのユーザーの雑用をすべて私に渡す条件文を書くにはどうすればよいですか? (日は文字列としてChorelistモデルに保存されます)

もうアプリケーションからコードが必要な場合は、私に知らせてください。そしてありがとう!

+0

「@ user.chorelists.select {| i | i.date == DATE} .each do | chorelist | ' –

+1

コントローラで代わりに実行する必要があります –

答えて

0

あなたのモデルにはどのフィールドがあるかを知ることは素晴らしいことです。一方、私はあなたがこのようなものを望んでいると思う:

date = Date.today   
@user.chores.joins(:chorelist) 
      .references(:chorelist) 
      .where(chorelists: {day: date}) 

これは、あなたのコントローラに、コメント者の提案ごとにする必要があります。

+0

これはトリックでした。ありがとう! – Justin