Сначала я хочу показать свои связанные модели как
#=> client.rb
class Client < ApplicationRecord
has_many :client_assignments, dependent: :destroy
has_many :projects, through: :client_assignments
end
#=> client_assignment.rb
class ClientAssignment < ApplicationRecord
belongs_to :project
belongs_to :client
end
#=> project.rb
class Project < ApplicationRecord
has_many :client_assignments, dependent: :destroy
has_many :clients, through: :client_assignments
validates :client_assignments, presence: true
has_many :user_assignments, dependent: :destroy
has_many :users, through: :user_assignments
validates :user_assignments, presence: true
end
#=> user.rb
class User < ApplicationRecord
has_many :user_assignments, dependent: :destroy
has_many :projects, through: :user_assignments
end
#=> user_assignment.rb
class UserAssignment < ApplicationRecord
belongs_to :project
belongs_to :user
end
Концепция: «Проект связан с client
& current_user
».
I 'Я борюсь за то, как найти current_user
вовлеченных проектов, где client
является определенным, Например: У меня есть client_id
& 2
, так как найти все проекты для этого клиента, гдесоответствие current_user.id
.
Я не знаю, как я это описываю.
Пожалуйста, дайте мне знать, если у вас есть путаница.