2012-05-07 5 views
0

ユーザがグループに含まれていることを確認したい。これを実行しようとする試みで、私は次の文があります。if文をRailsで使用するActiveRecord findメソッド

ドキュメントを見て
user_id = current_user.id 
unless (group.user.find(user_id)) 
    redirect_to different_path 
end 

を、「検索をIDで呼び出された場合、要求されたオブジェクトを見つける失敗はResourceNotFound 例外が発生します。」 unless文が正しく動作するようにするにはどうすればよいですか?

+0

の周りにあなたのロジックを構築することです代わりに、おそらくより良い方法を

redirect_to path if group.user.find(user_id) rescue ResourceNotFound redirect_to differenct_path end 

例外処理の一部としてリダイレクトを処理することができます。あなたは救助できませんか? –

答えて

2

グループとユーザー間のリレーションを定義した場合、current_user.group.present?を呼び出すことができます。関連するオブジェクトがない場合はfalseを返します。

1

あなたが「適切」の定義

user.groups.include?(group) 
関連する問題