Поправьте меня, если я здесь не прав, но похоже, что компании не будут входить в систему - только пользователи, принадлежащие компании.
Имея это в виду, вы должны иметь User
в качестве модели Devise вместо Company
. Тогда ваши ассоциации верны. Следующим шагом будет добавление полей для пользователя в форме для company#new
с использованием вложенных атрибутов (fields_for
в представлении; accepts_nested_attributes_for
в модели).
Отвечая на исходный вопрос: вы можете использовать вложенные атрибуты для создания нового пользователя в форме регистрации. Вам не нужно переопределять контроллер регистрации Devise. Просто измените форму регистрации, чтобы включить fields_for
пользователя. Также убедитесь, что модель Company
имеет accepts_nested_attributes_for
для модели User
.
Небольшое отступление: я не знаю архитектуры вашего приложения, но кажется, что has_many
будет более подходящим. В подобных случаях гораздо более вероятно, что вы захотите, чтобы несколько пользователей принадлежали одной компании.