2017-01-23 72 views
-1

我正在學習Golang並決定嘗試使用Iris,因爲它是目前最流行的框架,只是出於好奇。將路由器分組到Iris的外部文件中,派對

如何將路由分組到外部文件中?

main.go

// See apiRoutes here 
apiRouter := iris.Party("/api", apiRoutes) 

api_routes.go

func apiRoutes() { 

    iris.Get("/blog", ...) 

    iris.Get("/news", ...) 
} 

所以要/api/blog的調用將內api_routes.goiris.Get("/blog")函數內部進行處理。

更新:我目前的項目結構是這樣的。我也想繼續我的窩途徑:

|- Routes 
    |- api_routes.go 
    |- blog 
    |- blog_routes.go 
     |- posts 
      blog_posts_routes.go 
     |- categories 
      blog_categories_routes.go 
|- main.go 
+2

虹膜是_definitely not_最流行的Go框架。您可以搜索許多文章來記錄「唯一」開發人員的行爲。 – JimB

+0

@JimB你能把我連接到一些請嗎?我剛剛跳進來,所以任何建議是歡迎的 – borislemke

+1

http://www.florinpatan.ro/2016/10/why-you-should-not-use-iris-for-your-go.html。除了作者的行爲,恕我直言,只是有一個項目,通常重寫主分支的歷史,使其對任何嚴重的事情都不是首發。 – JimB

回答

0

如果您打算保持獨立的文件路徑,那麼你有兩個選擇

  1. 兩個main.go和api_routes.go必須是在同一包,大概在 你的情況它應該是「包主」
  2. 如果你保持api_routes.go在單獨的包,那麼你必須導入main.go中的包。
+0

查看我的更新。你能提供一些關於導入函數的基本代碼示例來作爲'HandlerFunc'嗎? – borislemke

+0

我根據您的文件夾結構寫了一個小樣本[鏈接](https://drive.google.com/file/d/0B1ZJ-CiBKRTBcTRBZUt1dW5zVm8/view?usp=sharing) –