Как я могу отобразить данные из связанной модели в форме Rails - PullRequest
0 голосов
/ 08 июня 2011

У меня есть две модели

class Car
    has_many :engines                         
end

class Engine
    belongs_to :car
end

В форме автомобиля у меня есть поле выбора, где пользователь может выбрать тип двигателя.Список может быть «1.4L; 1.6L; 2.0L ...»

Допустим, я хочу отображать дополнительную информацию из модели Engine, когда пользователь выбирает двигатель.Это должно быть отображено в форме автомобиля.Это может быть, например, BHP, максимальное количество оборотов и т. Д.

Как мне установить что-то подобное.Я предполагаю, что есть два аспекта:

  1. Как отобразить данные из модели двигателя в форме автомобиля без использования поля (эти данные не редактируются).

  2. Как динамически обновлять эти данные, когда пользователь выбирает опцию в поле выбора.

Может кто-нибудь указать мне на отправную точку для этого.Я немного растерялся, с чего начать.

Большое спасибо!

Ответы [ 2 ]

0 голосов
/ 08 июня 2011

Это называется вложенной формой, и если вы гуглите, то найдете много советов и подсказок.Например, this и this учебник.

Вам также следует рассмотреть возможность использования построителя форм, например formtastic или simple_form : у них много помощников, чтобы облегчить вам жизнь.

0 голосов
/ 08 июня 2011

Если вы работаете с collection_select в своей форме, вы устанавливаете два аргумента, таких как: id и: name в вызове collection_select. : id - это метод, вызываемый для определения значения тега параметра, а: name - метод, используемый для отображения содержимого тега параметра.

Решение: Создайте метод (например, name_for_select) в вашей модели двигателя, который возвращает строку с дополнительной информацией о вашем двигателе, и вместо этого вызовите collection_select с помощью: id,: name_for_select.

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