Ruby на Рельсах - Модель - PullRequest
0 голосов
/ 06 января 2020

введите описание изображения здесь

введите описание изображения здесь

У меня есть две таблицы: один из клиентов и другой из вызываемых. Каждый билет связан с 1 клиентом. В таблице client у меня есть родительский клиент, у каждого из которых есть собственный идентификатор, и у меня также есть дочерние клиенты, для них у нас есть идентификатор родительского клиента, определенный в столбце entities_id.

Мне нужно запросить все вызовы от родительских и дочерних клиентов, но вызовы от дочерних клиентов должны отображаться так, как если бы они были от родительского клиента, как я могу сделать этот запрос?

1 Ответ

1 голос
/ 06 января 2020

Что я понял, это

class Client
  has_many :calls
  has_many :child_clients, :class_name => 'Client',
  belongs_to :parent_client, :class_name => 'Client'
end

class Call
  belongs_to :client
end

Я не понял этой части в вашем вопросе

", но вызовы от дочерних клиентов должны отображаться так, как если бы они были из родительский клиент "

Но здесь может быть интересный запрос:

  • current_client.parent_client.calls
  • current_client.child_clients.map (: звонки)
  • Call.where (client_id: [current_client.parent_client_id, current_client.child_clients.map (&: id)]. Flatten)

Ps:

Ваш вопрос не совсем понятно и может быть намного лучше:

  • Вы могли бы вставить свои изображения напрямую
  • Вы говорите о клиентах, но ваше изображение показывает сущности
  • Вы могли бы напишите нам определение модели вместо таблиц.
...