Rails: предотвращение ошибок дублирования в Factory Girl… я делаю это неправильно?

Предположим, у меня есть модель пользователь , у которого есть ограничение уникальности для поля электронной почты

Если я позвоню Factory (: user) , когда все будет хорошо, но если я позвоню во второй раз произойдет сбой с ошибкой «запись уже существует».

В настоящее время я использую простой помощник для поиска существующей записи в БД перед созданием фабрики ... и вызываю любую фабрику, которую я создаю этот помощник.

Это работает, но не совсем элегантно, и, учитывая, насколько распространенной, как я полагаю, должна быть эта проблема, я предполагаю, что есть лучшее решение. Итак, есть ли в factory girl встроенный способ return_or_create factory, вместо того, чтобы просто продвигаться вперед с помощью create () ? Если нет, то как большинство людей избегают дублирования записей на своих фабриках?

36
задан Karol Selak 26 March 2018 в 14:24
поделиться