Revel 項(xiàng)目結(jié)構(gòu)

2018-11-25 22:21 更新

按照go 命令行工具的要求將Revel和Revel應(yīng)用程序安裝到 GOPATH。 (參考 “GOPATH 環(huán)境變量” go 命令 文檔)

項(xiàng)目結(jié)構(gòu)示例

gocode                  GOPATH 目錄
  src                   GOPATH src 目錄
    revel               Revel 安裝目錄
      ...
    sample              Revel應(yīng)用程序根目錄
      app               MVC目錄
        controllers     控制器
          init.go       
        models          模型
        routes          
        views           模板
      tests             測(cè)試
      conf              
        app.conf        默認(rèn)配置
        routes          路由定義
      messages          國(guó)際化
      public            靜態(tài)文件
        css             CSS files
        js              Javascript files
        images          Image files

app

app 存放源代碼和模板。

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

Revel 約定:

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

此外,Revel監(jiān)視 app/ 目錄,當(dāng)發(fā)現(xiàn)文件變動(dòng)時(shí),會(huì)自動(dòng)重新編譯。app/ 目錄以外的依賴(lài)關(guān)系不會(huì)被監(jiān)視,在必要的時(shí)候由開(kāi)發(fā)人員重新執(zhí)行編譯。

Revel在app目錄的init()函數(shù)開(kāi)始的時(shí)候會(huì)導(dǎo)入 app/中的所有依賴(lài)包或者 ( 模塊)。

controllers/init.go 用于注冊(cè)攔截器 interceptor。同一個(gè)包的源文件中init() 函數(shù)的執(zhí)行無(wú)序的, 所以收集所有的攔截器定義到同一個(gè)文件中,便于開(kāi)發(fā)者指定攔截器的執(zhí)行順序(也可以用于順序敏感的初始化)。

conf

conf 目錄包含了Revel應(yīng)用程序的配置文件,有兩個(gè)主要的配置:

  • app.conf, 主配置文件,包含了標(biāo)準(zhǔn)配置參數(shù)。
  • routes, 路由定義文件。

messages

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

public

靜態(tài)資源文件存放到 public 目錄,由Web server 直接提供靜態(tài)文件支持。 通常包含三個(gè)標(biāo)準(zhǔn)的子目錄 images, CSS 和 JavaScript。

目錄的名字可以隨意,使用的時(shí)候只需要與路由對(duì)應(yīng)起來(lái)就好。

以上內(nèi)容是否對(duì)您有幫助:
在線(xiàn)筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)