只是好奇,params 应该是包含有关浏览器请求的详细信息的哈希值。但是 debug(params) 返回
controller: controllername
action:actionname
.
.
.
它包含这些键值对是否有任何特定原因?
最佳答案
params
来自三个来源
- 网址
- 查询字符串(GET)
- post数据通常通过表单提交(POST)
Controller 名称和操作名称来自 URL。假设 url 是“article/123”,Rails 会知道:
- Controller 是
ArticlesController
- 因为“article”是 url 的第一部分 - Action 是
#show
,因为请求是GET
并且有ID
一旦您在 routes.rb
中定义了它们,就可以识别任何 Controller 和 Action 。还记得您需要为自定义路由分配 Controller 名称和操作吗?
关于ruby-on-rails - 为什么参数包含有关 Controller 和操作的详细信息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16601157/