加载中...

项目结构


按照go 命令行工具的要求将Revel和Revel应用程序安装到 GOPATH。 (参考 “GOPATH 环境变量” go 命令 文档)

项目结构示例

  1. gocode                  GOPATH 目录
  2.   src                   GOPATH src 目录
  3.     revel               Revel 安装目录
  4.       ...
  5.     sample              Revel应用程序根目录
  6.       app               MVC目录
  7.         controllers     控制器
  8.           init.go       
  9.         models          模型
  10.         routes          
  11.         views           模板
  12.       tests             测试
  13.       conf              
  14.         app.conf        默认配置
  15.         routes          路由定义
  16.       messages          国际化
  17.       public            静态文件
  18.         css             CSS files
  19.         js              Javascript files
  20.         images          Image files

app

app 存放源代码和模板。

  • app/controllers
  • app/models
  • app/views

Revel 约定:

  • 模板文件放到 app/views目录
  • 控制器文件放到 app/controllers目录

此外,Revel监视 app/ 目录,当发现文件变动时,会自动重新编译。app/ 目录以外的依赖关系不会被监视,在必要的时候由开发人员重新执行编译。

Revel在app目录的init()函数开始的时候会导入 app/中的所有依赖包或者 ( 模块)。

controllers/init.go 用于注册拦截器 interceptor。同一个包的源文件中init() 函数的执行无序的, 所以收集所有的拦截器定义到同一个文件中,便于开发者指定拦截器的执行顺序(也可以用于顺序敏感的初始化)。

conf

conf 目录包含了Revel应用程序的配置文件,有两个主要的配置:

  • app.conf, 主配置文件,包含了标准配置参数。
  • routes, 路由定义文件。

messages

messages 目录包含了本地化消息文件。

public

静态资源文件存放到 public 目录,由Web server 直接提供静态文件支持。 通常包含三个标准的子目录 images, CSS 和 JavaScript。

目录的名字可以随意,使用的时候只需要与路由对应起来就好。


还没有评论.