これを行うための最良のアプローチは何ですか?
@user = UserFinder.find(first_name: "Dave")
if !@user
return render :text => '// No user named Dave found'
end
if @user.last_name != "Edwards"
# This is not the guy we want
@user.destroy
# Now we want to re-execute the search again forever until we find Dave Edwards
end
これは私が持っている実際のコードの非常に単純な例であることに注意してください。最初からクエリをフィルタリングできることはわかっていますが、この方法が必要です。
不要なユーザーに遭遇した場合は破棄する必要があるためbegin
、ブロックを使用してこれを行う方法がわかりません。while
私の試み:
begin
@user = UserFinder.find(first_name: "Dave")
return render :text => '// No user named Dave found'
end while @user.destroy if @user.last_name != "Edwards"
while
ブロックはdestroy
の比較ではない結果を取得するため、これは機能しませんlast_name
PSこれがこの方法で不可能な場合、同じパラメータでRailsコントローラアクションをリロードするにはどうすればよいですか?