use find_or_create_by instead of rescue RecordNotUnique