Как правильно создавать формы для создания / обновления записей с наследованием одной таблицы (STI) в Rails?

#ruby-on-rails-3 #erb #single-table-inheritance

#ruby-on-rails-3 #erb #наследование одной таблицы

Вопрос:

Если у вас есть наследование одной таблицы в Rails, что-то вроде этого:

 class Vehicle < ActiveRecord::Base
class Car < Vehicle
class Truck < Vehicle
  

Каков рекомендуемый способ создания единого шаблона, который позволяет пользователю создавать легковой автомобиль из одного vehicles/new.html.erb? Я думаю, что сложность заключается в том, как разместить html-форму так, чтобы присутствовали поля car и truck, но когда происходит POST, контроллер каким-то образом знает, что нужно выбрать правильную форму на основе html select или radio. Я надеюсь, что у кого-то намного умнее меня есть отличный ответ с рекомендациями!!

Дополнительная информация: Vehicle на самом деле является вложенной ассоциацией под именем Person, так что на самом деле это Person#vehicle_attributes…

Комментарии:

1. используете ли вы один контроллер для обеих моделей или два контроллера (по одному для каждого типа транспортного средства?

2. один контроллер (VehiclesController). Я думаю, что я понял часть контроллера (VehiclesController#create будет смотреть на параметры [: vehicle] [:type], если это необходимо).