路由文件中是否有方法检查和验证URL参数。我不是在谈论宁静'/控制器/行动/:ID'参数,但'控制器/行动?param1 = x & param2 = y & param3 = z'。我需要能够验证每个参数并要求它们。如何在rails 3中需要和检查url参数
4
A
回答
7
是的,你可以。例如检查参数1存在而不是空白的,你会做到以下几点:
match 'c/action' => 'c#action', :constraints => lambda{ |req| !req.params[:param1].blank? }
您还可以范围这些限制将它们应用到多条路线:
scope :constraints => lambda{ |req| !req.params[:param1].blank? } do
match 'controller/action1' => 'controller#action1'
match 'controller/action2' => 'controller#action2'
end
2
与约束问题的方法概述通过泛Thomakos是它会阻止具有无效参数集的URL到达您的代码库,并且您能够以有意义的方式响应用户(用户将看到页面未找到错误,我相信)。
如果那符合您的要求,那很好,但更友好的方法是将参数验证移动到相应的控制器中,在您的操作方法中,您将通过此操作方法收到的参数集,任何需要的都丢失了,你会构造一个含义错误的消息,并通过以下方法将错误返回给用户:notice
相关问题
- 1. Rails 3:如何混合形式参数和URL参数?
- 2. 在Rails 3中构造URL参数
- 3. 如何在使用强参数时在Rails中需要数组?
- 4. 如何在Rails 3中处理传统的参数库URL?
- 5. 的.htaccess需要检查空白参数
- 6. 检查XSLT是否需要参数?
- 7. 如何在Rails中获取URL参数?
- 8. Rails在URL中查询参数两次
- 9. SQL查询需要很长的时间和参数检查
- 10. 如何检查函数是否需要参数?
- 11. rails 3,在link_to中如何指定目标和可选的url参数?
- 12. CakePHP 3 Paginator和URL参数
- 13. 需要根据SQL查询中的表格行检查参数
- 14. 检查Rails中是否存在参数
- 15. 如何检查url中是否存在任何php参数
- 16. php url参数检查
- 17. API需要查询参数和正文
- 18. 在Rails 3和jQuery,需要在Ajax接收JSON数据:成功
- 19. Rails,select_tag:需要在参数中返回ID和字符串
- 20. Rails:我如何设置不需要:id参数的方法的路由,而是需要2个查询参数
- 21. 的Rails 3 - 如何解决不同的参数计数URL
- 22. rails检查完成date_select和time_select参数
- 23. 如何在post/put simple_form中传递get参数和Rails 3?
- 24. 检查URL包含参数
- 25. Rails路线和URL参数
- 26. Rails Link_to与url和参数
- 27. 如何在JavaScript中检索URL查询参数
- 28. 如何检查url中是否存在参数?
- 29. Rails会话需要“检查”被称为
- 30. 是否有任何缺省的类来检查参数,如果存在需要从java中删除它的url?
实际上,它的工作原理是完美的,用户永远无法访问没有传递参数的页面。网址是由另一个系统生成的,并且对用户是透明的。这是一个非常特殊和奇怪的情况。 – pho3nixf1re 2011-03-13 05:39:49