【发布时间】:2014-05-04 17:35:42
【问题描述】:
我是 Rails 的新手,所以我想知道下面是否存在已知模式(我的 Google 技能在这里失败了)。
我所有的 Rest 控制器都遵循以下基本模式:
检查项目是否存在 --> 如果存在则获取项目 --> 如果不存在则返回错误 --> 如果存在则执行某些操作 --> 检查操作是否失败 --> 如果失败则返回错误--> 如果没有,则成功。所以两个动作,两个错误检查。我的问题是:这是一个很好的正确模式,还是我应该做一些不同的事情?
“销毁”方法示例:
def destroy
if @team = fetch_team
if @team.destroy
render json: {message: "team: '#{params[:id]}' deleted"}, status: 200
else
render json: {message: "error: #{@team.errors.full_messages}"}, status: 500
end
else
render json: {message: "team: '#{params[:id]}' not found"}, status: 404
end
end
##
def fetch_team
Team.find_by(name: params[:id])
end
【问题讨论】:
标签: ruby-on-rails ruby restful-url