我正在尋找一種方法來獲取屬於某個項目的所有任務,其中該項目具有特定的團隊屬性。試圖查找屬於某個項目的所有任務
- 項目
has_many
任務 - 任務
has_one
項目
我的項目有一個名爲team
表列。 我正在尋找一種方法來調用我的項目控制器中的任務以顯示在我的項目索引中。
我正在尋找一種方法來獲取屬於某個項目的所有任務,其中該項目具有特定的團隊屬性。試圖查找屬於某個項目的所有任務
has_many
任務has_one
項目我的項目有一個名爲team
表列。 我正在尋找一種方法來調用我的項目控制器中的任務以顯示在我的項目索引中。
在你的模型的關係應該是象下面這樣:
class Project < ActiveRecord::Base
has_many :tasks
end
任務模式:
class Task < ActiveRecord::Base
belongs_to :project
end
def index
@projects = Project.where(column_name: 'some_value')
end
在項目視圖
<% @projects.includes(:tasks).each do |project|%>
<% project.tasks.each do |task| %>
<%= task.team %>
<% end %>
... and attributes so on
<% end %>
# projects controller
def index
@tasks = Project.find_by(team: 'some_team').tasks
end
假設你已經在你的projects
表中的列稱爲team
,這應該工作。現在,在您的index
視圖中,您可以使用@tasks
變量訪問每個任務。
謝謝馬克!你能告訴我如何能夠顯示團隊任務的總數嗎?每個任務都有一個processMetric和outcomeMetric,我總是在白天嘗試。 –
這將不起作用,因爲'.where'返回一個集合。您可能想要使用'find_by' – Mark
我想顯示許多項目的所有任務。有沒有辦法用where子句做到這一點?更具體地說,我試圖爲任何具有特定團隊名稱的項目顯示所有任務。這意味着我很可能會獲得許多項目,每個項目都有很多任務。 –
@JasonMarkBeaton請檢查我的更新答案。 –