Задать вопрос
@itemashabanov

Как передать параметр из представления «a» в контроллер «b» Rails?

Здравствуйте.
Есть три scaffold: Group, Discipline, Teacher_material. Group has_many Disciplines, Disciplines has_many Teacher_materials. При создании Discipline я указываю номер Group, к которой она относится. И вот во вьющке Group есть список этих самых Group, и я хочу, чтобы при нажатии на название Group открывалась страница с Disciplines, принадлежащих этой Group(сейчас открывается список всех Disciplines). Как это реализовать? 4 дня уже не могу справиться. Спасибо.
  • Вопрос задан
  • 168 просмотров
Подписаться 1 Средний Комментировать
Решения вопроса 1
@itemashabanov Автор вопроса
О Боже, неужели я смог это сделать?))) Очень рад, ибо 5 дней не мог понять как передать id группы в качестве параметра контроллеру Disciplines. А оказывается, в Rails это очень просто(я думал что контроллеры закрыты друг для друга, а на самом деле - нет).
Если кому надо: во вьюшке Group я передаю параметр следующим образом:
<a href="<%= disciplines_path(:group_id => group.group) %>">
  <dt>
    <%= group.group %>
  </dt>
</a>

А в контроллере Disciplines уже принимаю его и передаю параметром в фильтр
def index
    @g = params[:group_id]
    @disciplines = Discipline.where(group_id: @g)
  end
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@Fly3110
web developer
Реализовать фильтр в def index контроллера Disciplines?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы