Показать таблицу в другом виде, чем оригинал - PullRequest
0 голосов
/ 04 октября 2018

Как отобразить таблицу недоступности моего сотрудника в моем представлении расписания?

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

<div class="col-lg-6 col-sm-12 right">
      <% @non_availabilities = NonAvailability.all %>
      <table class="table table-striped table-bordered table-hover">
        <thead>
        <tr>
          <th class="col-md-2">Employee</th>
          <th class="col-md-2">Date</th>
          <th class="col-md-2">Time</th>
          <th class="col-md-2">Reason</th>
        </tr>
        </thead>
      <tbody>
      <% @non_availabilities.each do |non_availability| %>
        <tr>
        <td class="col-md-2"><%= non_availability.employee.full_name %></td>
        <td class="col-md-2"><%= non_availability.date %></td>
        <td class="col-md-2"><%= non_availability.time %></td>
        <td class="col-md-2"><%= non_availability.reason %></td></tr>
      <% end %>
        </tbody>
        </table>
    </div>

Ответы [ 3 ]

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

Ответ @ Джейк правильный, всего одна оговорка.

Предположим, вы определили расписание как двухнедельный ростер, поэтому отношения станут многим ко многим (не принадлежат_то), и вам понадобится таблица соединений.

В «Schedule.rb» (модель): has_and_belongs_to_many :employes В «Employee.rb» (модель): has_and_belongs_to_many :schedules

У меня была похожая проблема на прошлой неделе, этот ответ был полезен: Создание отношения многие ко многим в Rails

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

Это был очень простой ответ на мой вопрос.Для отображения таблицы модели в другом представлении модели все, что мне было нужно, это следующее.

<% @employees.each do |employee| %>
  <%= employee.name %>
  <%= employee.position %>
<% end %>
0 голосов
/ 04 октября 2018

Допустим, ваша таблица сотрудников представляет собой модель с именем Employee, а ваша форма расписания - модель с именем Schedule.

Если вы хотите перечислить всех своих сотрудников в представлении schedules show (или любое другое представление, например индекс), вы можете использовать что-то вроде этого:

class SchedulesController < ApplicationController

  def show
    @employees = Employee.all
  end

end

В "Employee.rb" (модель): belongs_to :schedule

В "Schedule.rb"(модель): has_many :employees

И в вашем shedules show.html.erb:

<% @employees.each do |employee| %>
  <p><%= employee.name %></p>
  <p><%= employee.position %></p>
<% end %>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...