Вы можете добавить все необходимые поля в модель, сгенерированные devise (например, Пользователь). Если вы хотите сохранить все данные в отдельной модели (UserProfile), вам нужно создать ассоциацию has_one / assign_to:
class User < ActiveRecord::Base
has_one :user_profile
# ... Some other stuff here
end
class UserProfile < ActiveRecord::Base
belongs_to :user
# ...
end
Чтобы получить электронную почту для UserProfile, вы можете:
profile = UserProfile.first
email = profile.user.email
Чтобы получить UserProfile от объекта User:
user = User.first
profile = user.user_profile
Чтобы сохранить информацию об авторе страницы, вы должны использовать ассоциацию has_many / assign_to:
class User < ActiveRecord::Base
has_many :pages
# ... Some other stuff here
end
class Page < ActiveRecord::Base
belongs_to :user
# ... Some other stuff here
end
В некоторых видах модели страницы вы можете отобразить автора следующим образом:
Page author is <%= @page.user.user_profile.name %>
Или, если вы решили добавить поля непосредственно в модель пользователя
Page author is <%= @page.user.name %>