Select 未找到记录时的可选命令
Select optional command if Record not found
在 rails 中,我正在努力实现类似的目标:
@user = User.find(params[:id]) || current_user
即:如果 User.find(params[:id])
找不到现有记录,我希望 @user
存储 current_user
我认为这可能是一件简单的事情。但我刚开始在 rails 上使用 ruby。
提前致谢。
ptd 是正确的 - 抛出异常是 Rails 的意图,因为它等效于 SQL where
带有传递 id 的子句 - 因此 Rails 期望记录这样 id
存在。但是我认为你可以使用这样的代码,而不是 rescue
-ing(我相信它更像 pythonic 方式):
@user = User.find_by_id(params[:id]) || current_user
在 rails 中,我正在努力实现类似的目标:
@user = User.find(params[:id]) || current_user
即:如果 User.find(params[:id])
找不到现有记录,我希望 @user
存储 current_user
我认为这可能是一件简单的事情。但我刚开始在 rails 上使用 ruby。 提前致谢。
ptd 是正确的 - 抛出异常是 Rails 的意图,因为它等效于 SQL where
带有传递 id 的子句 - 因此 Rails 期望记录这样 id
存在。但是我认为你可以使用这样的代码,而不是 rescue
-ing(我相信它更像 pythonic 方式):
@user = User.find_by_id(params[:id]) || current_user