というモデルがありEvaluation
ます。がevaluation
作成eval_number
されると、それとともに が作成されます。evaluations
同じものがたくさんありますeval_number
。
次に例を示します。
- !ruby/object:Evaluation
attributes:
id: 2023
score: 3
created_at: 2013-09-08 13:10:53.000000000 Z
updated_at: 2013-09-08 13:10:53.000000000 Z
student_id: 26
goal_id: 50
eval_number: 33
- !ruby/object:Evaluation
attributes:
id: 2099
score: 4
created_at: 2013-09-08 13:19:12.000000000 Z
updated_at: 2013-09-08 13:19:12.000000000 Z
student_id: 26
goal_id: 36
eval_number: 34
- !ruby/object:Evaluation
attributes:
id: 2100
score: 3
created_at: 2013-09-08 13:19:12.000000000 Z
updated_at: 2013-09-08 13:19:12.000000000 Z
student_id: 26
goal_id: 37
eval_number: 34
- !ruby/object:Evaluation
attributes:
id: 2101
score: 4
created_at: 2013-09-08 13:19:12.000000000 Z
updated_at: 2013-09-08 13:19:12.000000000 Z
student_id: 26
goal_id: 38
eval_number: 34
evaluation
ビューで、特定のオブジェクトが作成された日付をテーブル ヘッダーに表示したいと考えています。次のようになります。
date_1 | date_2 | date_3 | date_4 | etc..
これを行うには、個別のものとそれらに付随evaluation_numbers
するcreated_at
日付を取得する必要があります。これが役立つと思いましたが、次のeval_number
コードで1 つ以上のレコードが返されます。
def eval_date(i)
evals = self.goals.first.evaluations
eval = evals.select("distinct(eval_number), created_at").all[i]
eval.created_at.to_date
end
eval_number
個別の s が選択されているようですが、個別の列もcreated_at
選択されているようです(もちろんすべて異なります)。これにより、要素が正しく.all[i]
検出されるため、基本的には役に立たなくなりますが、返された配列には 、指定された[0], [1], [2], etc
数よりもはるかに多くの要素があります。i
eval_number
個別のものを見つけて、それに付随するものだけをロードしたいcreated_date
。レコード全体をすべての属性でロードできると思いますが、それらは必要ないので、むしろそうしたくありません。