【发布时间】:2020-01-24 06:52:39
【问题描述】:
我有一个正在处理的项目,我要做出一些改变。 我们正在开发一个像 Jira 这样的应用程序,您可以在其中有不同的任务板。 我必须创建一个饼图来显示用户有多少任务。 我的旧版本代码是这样的:
= pie_chart Task.all.group(:assigned_id).count.map { |k,v| [User.find(k).full_name, v] }.to_h
它奏效了。一位资深人士告诉我创建一个查询来获取名称和任务计数对。直到现在我有这样的东西,但它不工作:
= pie_chart current_account.organization.Tasks = Task.joins(:assigned_id).where(:full_name)
型号:
class Account < ApplicationRecord
belongs_to :user
belongs_to :role
belongs_to :organization
has_many :activities, dependent: :destroy
has_many :tasks, dependent: :destroy
has_many :activities, dependent: :destroy
has_many :comments, dependent: :destroy
class Organization < ApplicationRecord
include PgSearch
has_one_attached :logo
has_many :accounts
has_many :boards
class Task < ApplicationRecord
has_one_attached :file
belongs_to :list
belongs_to :owner, class_name: "Account", foreign_key: "owner_id"
belongs_to :assigned, class_name: "Account", foreign_key: "assigned_id"
has_many :subtasks, dependent: :destroy
has_many :comments, dependent: :destroy
has_many :activities, dependent: :destroy
class User < ApplicationRecord
include PgSearch
has_many :accounts, dependent: :destroy
has_one_attached :avatar
【问题讨论】:
-
是的,我想要那个.. 旧方法有效,它显示分配给用户的任务,但一位前辈让我改变它,现在我很挣扎。
-
如果您遇到困难,请不要害怕向资深人士寻求指导 - 如果他们擅长工作,他们应该很乐意提供一些建议 :) 否则,我认为无论如何,这里的答案都应该破解。
标签: ruby-on-rails join