из кода, который вы разместили, кажется, что вы не используете запрос для получения заданий, которые вы хотите из базы данных, например,
@jobs = Job.all
Job.all
- это запрос activerecord, который получает вседоступные записи из базы данных.Похоже, вы можете быть смущены тем, как все части MVC предназначены для совместной работы.
Во-первых, вы не должны делиться методами между контроллерами, в действительности ваши контроллеры будут иметь очень мало кода.
Rails направит запрос и найдет действие, определенное в контроллере, если он его не найдет, он перейдет в папку представлений и получит там шаблон этого имени действия, например, запросto Jobs#index
будет искать индексное действие в контроллере, а затем, если его там нет, искать шаблон views/jobs/index.erb
для рендеринга.Так что, если вы обслуживаете статические данные и вам не нужно искать данные, вам даже не нужно никаких действий в вашем контроллере.Однако часто это действие необходимо, поскольку именно в контроллере вы выполняете поиск по базе данных и модели, а затем передаете эти переменные экземпляра в представление.Держите все запросы к базе данных и действия модели вне представлений.
def index
@jobs = Job.all
end
и в представлении
@jobs.each do |job| ...
Блок respond_to
совершенно не нужен, если вы не хотите возвращать в другом форматешаблон, чем HTML, например, XML или JSON для веб-службы.