mam mały problem ze zbudowaniem formularza rejestracji, który częściowo opiera się na modelu User (gem devise) a częściowo na innym modelu - UserDetails.
Model User ma standardowe pola tj email, password itp. zaś model UserDetails ma pola tj firstname, lastname, …
i robiąc formularz w sposób standardowy:
Zastanów się czy na pewno tego potrzebujesz. Co na tym zyskujesz?
Pisz zmienne raczej z podkreśleniem niż jako zlepki, first_name jest bardziej czytelne, a trzymając się takiej konwencji możesz mieć takie psikusy jak bardzodluganazwajakiejszmiennej.
To nie kwestia devise’a. Dla każdego innego modelu wyskoczyłby ten sam błąd - skąd interpreter ma wiedzieć, że to metoda innego modelu? Użyj nested_attributes, jakoś tak:
# w modelu
accepts_nested_attributes_for :user_details
[code=ruby]# w widoku
= f.fields_for :user_details do |d|
= d.text_field :first_name
= d.text_field :last_name[/code]
Nie sprawdzałem kodu, jakby co patrz w dokumentację, lub pytaj.