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

Как сделать в simple_form (rails) необычную ассоциацию?

Добрый день.
Есть форма по созданию трабл тикета:
<%= simple_form_for @request,  html: {class: 'form-horizontal' } do |f| %>
  <%= f.input :initiator, label: 'Инициатор'  %>
  <%= f.association :department, collection: Department.all, value_method: :id, label: 'Назначить на отдел' %>
  <%= f.association :user, collection: User.all, label_method: :email, label: 'Ответственный' %>
  <%= f.input :comment, label: 'Комментарий' %>
  <%= f.input :sla, label: 'SLA' %>
  <%= f.button :submit, label: 'Создать', class: "btn btn-primary" %>
<% end %>

Как сделать так, чтобы при выборе департамента ( <%= f.association :department...) пользователи из второго выпадающего меню были только из данного департамента, а не User.all. Какие параметры дать рельсам? Посредствам чего это решается?
  • Вопрос задан
  • 2658 просмотров
Подписаться 2 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 3
FanKiLL
@FanKiLL
Посмотрите скринкаст Dynamic Select Menus от railscasts.com там как раз делается то что вам нужно.
Есть более новая версия скринкаста, но нужна подписка. У меня есть новая версия, только хз куда залить да и надо ли на rutracker можно и так скачать.
Ответ написан
@vsuhachev
Это только javascript'ом можно сделать, один из вариантов - на первый select на событие 'change' вешаете обработчик, который делает AJAXом запрос на сервер, получает нужных пользователей и заполняет второй select. Гуглите по ajax master-detail select boxes
Ответ написан
Комментировать
walkman7
@walkman7
Это делается через Ajax, когда пользователь выбрал департамент подгружаются пользователи из выбраного департамента.
Ответ написан
Ваш ответ на вопрос

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

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