Revel 概念


当前第2页 返回上一页

作为 HTTP 请求处理的一部分,Revel 实例化你的控制器,并设置嵌入revel.Controller的所有的属性。 Revel 不在请求之间共享实例。


Controller 是直接 或 间接嵌入 *revel.Controller 的一个struct。

type AppController struct {
  *revel.Controller
}

Action 是 Controller 的方法。符合下面的条件:

  • 名称是导出的(首字母大写)
  • 返回 revel.Result 类型

例如:

func (c AppController) ShowLogin(username string) revel.Result {
    ..
    return c.Render(username)
}

程序调用 revel.Controller.Render 渲染一个模板, 传递给模板一个username参数。revel.Controller 有许多方法处理revel.Result, 程序也可以自己创建处理方法。

Results

Result 符合下面的接口:

type Result interface {
    Apply(req *Request, resp *Response)
}

通常, 什么也不响应,直到 action 和所有的过滤器返回。此时,Revel写入响应的headers和cookies。(例如设置会话cookie), 然后调用 Result.Apply 写入实际响应内容。


标签:Revel

返回前面的内容

相关阅读 >>

Revel 消息处理

Revel 介绍

Revel 拦截器

Revel 测试

Revel 控制器概要

Revel 项目结构

Revel 日志类型

Revel session flash

Revel 模板

Revel 命令行工具

更多相关阅读请进入《Revel》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...