2016-12-05 5 views
0

これは、ユーザーのコントローラで私のcreate方法であり、招待状を送信するためにinvitation gemファイルを使用しています同じメールIDを使用して別のユーザーを作成すると、既存のユーザーのすべてのデータが更新されます。これでユーザーを更新できないようにするにはどうすればよいですか?(モデルの検証を使用していますが検証します:電子メール、一意性:真)

+0

あなたはOPにあなたのモデルコードやエラーを追加してくださいすることができますか? – usmanali

答えて

1

お客様のuserモデルに固有のメールvalidationを追加する必要があります。

validates :email, uniqueness: true 

また、このようなあなたのコードをリファクタリング:

def create 
    user = User.new(user_params) 
    if user.save 
     flash[:notice] = '#{params[:user][:role]} created successfully' 
     redirect_to users_path(role: params[:role]) 
    else 
     flash[:errors] = "#{user.errors.full_messages.join(', ')}" 
     redirect_to new_user_path 
    end 
end 
関連する問題