私は Rails を初めて使用し、ActiveRecord でいくつかのことを理解するのに苦労しています。
現在、次の 3 つのモデルがあります。
class Project < ActiveRecord::Base
attr_accessible :name
has_and_belongs_to_many :tags
has_many :tasks
end
class Task < ActiveRecord::Base
attr_accessible :todo
has_and_belongs_to_many :tags
has_many :tasks
end
class Tag < ActiveRecord::Base
attr_accesible :description
has_and_belongs_to_many :projects
has_and_belongs_to_many :tasks
end
特定のタグに属するタスクを返すハッシュを作成しようとしています。
Project_Tasks = { 1 => { project.name, "tasks" => { "task 1", "task 2", "task 3" }
2 => { project.name, "tasks" => { "task 1", "task 2", "task 3" } }
これを作成する方法がよくわかりません。私の最初の傾向は、指定されたタグに一致するプロジェクトをループするクラスの 1 つの内部にメソッドを作成することです (どのクラスを行ったり来たりしています... 現在、「タグ」の下で提供されるのが最適だと思います)。 、両方に一致するタスクのクエリを実行し、それらを配列に追加します。
今日まで、これは機能していません。私は完全に困惑しています。
これを達成する方法について何か考えはありますか?メソッドは適切な方法ですか、または少なくともこれに近づくクエリを作成するための ActiveRecord 内部のトリックはありますか?