Таблица рельсов с предложением where - PullRequest
0 голосов
/ 22 октября 2018

У меня есть модель NonAvailability сотрудника, и вместо отображения всех недоступностей в таблице с помощью

<% @non_availabilities = NonAvailability.all %>
<% @non_availabilities.each do |non_availability| %>
<%= non_availability.employee.full_name %>
<%= non_availability.date %>
<%= non_availability.time %>
<%= non_availability.reason %>

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

1 Ответ

0 голосов
/ 22 октября 2018

Существует несколько способов получения записей в рельсах.Например, вы можете фильтровать NonAvailability с помощью employee_ids, используя where метод

ids = [1,2,3,4] # ids of employee
NonAvailabilty.where(employee_id: ids)

Если вы хотите использовать цепочку методов, определите ассоциации has_many и belongs_to в ваших Employee иNonAvailability модель.Предполагая, что ваш дизайн имеет эти спецификации.

# employee.rb
class Employee
  has_many :non_availabilities
end

# non_availability.rb
class NonAvailability
  belongs_to :employee
end

Затем вы можете извлечь все non_availabilites, используя employee объект.

employee = Employee.find_by(id: 1)
employee.non_availabilities 

Для получения дополнительной информации посетите эту Ассоциацию активных записей Руководство

...