В раскрывающемся списке Rails, как отобразить все имена столбцов из модели? - PullRequest
0 голосов
/ 07 ноября 2019

У меня есть раскрывающийся список Rails, как показано ниже:

<%= select_tag(:category, options_for_select([['Model1', 0], ['Model2', 1], ['Model3', 2], ['Model4', 3]], :selected => 0), :multiple => true) %>

По умолчанию будет выбрано Model1, как показано выше. Каждый элемент в раскрывающемся списке выше представляет собой модель Rails (которая, очевидно, имеет свою собственную таблицу базы данных)

  1. Теперь я хотел бы отобразить еще один раскрывающийся список, в котором будут отображаться все имена столбцов из модели Rails * 1008. * стол.
  2. Если пользователь изменяет выбор на Model2 в раскрывающемся списке выше, то во втором раскрывающемся списке должны отображаться все имена столбцов из Model2.
  3. Если пользователь выбирает несколько вариантов извыше, тогда я хотел бы отобразить столбцы из всех моделей, которые выбрал пользователь.

Как мне этого добиться?

Ответы [ 2 ]

1 голос
/ 07 ноября 2019

Как упоминалось выше, ActiveRecord # column_names - это способ заполнения вашего второго раскрывающегося списка.

Теперь, если вам нужно динамическое соотношение между двумя раскрывающимися списками - второе заполняетсяинформации в зависимости от первого - одних Rails будет недостаточно.

Вам нужно будет добавить немного javascript для достижения этой цели, и я предлагаю вам прочитать ответ @ rlarcombe по этому вопросу.

0 голосов
/ 07 ноября 2019

Model1.column_names. Это то, что вы искали?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...