controller定义: 拿到被分配的请求,理解请求,处理请求,生成输出.
控制器将接收请求(这对开发人员来说是不可见的),从模型中获取或保存数据,并使用视图创建 HTML 输出。
controller是一个ruby类,继承自父亲类别,当rest接收到请求时,请求中会用controller和操作,会找到相应的controller,然后rails回吧controller类实例化,并运行方法.
controller可以控制参数, 查询字符串参数和表单数据
params 是一个哈西对象,
params包含了从浏览器到客户端的请求数据
parkas包含了url的查询数据和http表单数据
hash存储键值对,person = { name: “John”, age: 30 } , {}是哈西符号.
crud操作hash
person[:name] 就得到了john.
强参数: 为了不让批量赋值.
params.require().permit()
require
确保某个参数在请求中存在,常用于嵌套参数的存在性检查。
permit
用于指定允许的字段,通过白名单的方式过滤传递到模型的参数
负责返回响应。“ActionController 可轻松呈现 HTML、XML 或 JSON 数据”