0
# GET /homeworks/1
# GET /homeworks/1.json
def show
params.permit(:id => [])
end
我想为'id'参数强制执行一些特定的值。如果'id'的值不是“1”或“2”,它不应该渲染视图。如何执行参数的特定值?
# GET /homeworks/1
# GET /homeworks/1.json
def show
params.permit(:id => [])
end
我想为'id'参数强制执行一些特定的值。如果'id'的值不是“1”或“2”,它不应该渲染视图。如何执行参数的特定值?
我更喜欢使用路由来实现这种限制。在routes.rb
,
get 'homeworks/:id', :to=>'my_controller#show', :constraints => {:id => /^[12]$/}
/^[12]$/
为 “1或2” 的正则表达式。所以对于GET /homeworks/3
它会给出路由错误。
if @homework.id > 2
render :text => "unable to render view"
else
render 'view'
end
很好。我如何在这种风格中添加这样的约束:资源:homeworks –
我做到了。谢谢! –