Dans mon application Rails, je souhaite trouver un utilisateur par courrier électronique ou, si l'utilisateur n'existe pas, en créer un avec cet e-mail ainsi que quelques autres attributs. Y at-il un moyen moins maladroit que le code ci-dessous pour le faire, peut-être en utilisant find_or_create_by
?Implémentation find_or_create_by lorsque find implique un attribut unique mais create implique plusieurs attributs
def set_user
if self.user = User.find_by(email: recipient)
else
self.user = User.create(email: recipient,
password: Devise.friendly_token.first(6),
confirmed_at: DateTime.now)
end
end