Не могли бы вы рассказать мне, какая наилучшая практика для создания отношений has_one?Rails - Best-Practice: Как создать зависимые отношения has_one
f.e. если у меня есть модель пользователя, и у нее должен быть профиль ...
Как я мог это сделать?
Одно из решений:
# user.rb
class User << ActiveRecord::Base
after_create :set_default_association
def set_default_association
self.create_profile
end
end
Но это не кажется, очень чистый ... Все говорит?
+1 для осознания проверки ребенка. – PeterWong
Могло ли это также управляться с помощью одной строки? -> before_filter: build_profile? – Lichtamberg
@Lichtamberg: Да, но я бы добавил комментарий: «Создает профиль по умолчанию. ДОЛЖЕН всегда проверять». ПРИМЕЧАНИЕ: это будет «before_create: build_profile», а не «before_filter». Если это не подтвердилось, вы получите очень запутанную ошибку msg для пользователя. Или это НЕ было бы на самом деле создано, что означало бы, что вы попадете в Пользователь без профиля. Вы также должны проверить угловые случаи в своих тестах. –