Kmszk with GO

PHPとかJavascriptとかGolangとかVim関連とか書きそうな感じがしていたが、現状Golangだらけになっている。

RevelのGetパラメータの取得方法の色々とroutesの関係

RevelでのGetパラメータの取得方法

RevelではGetパラメータの取得方法がいくつかある - Actionの引数にGetパラメータを指定する場合 - コントローラのBinderを利用する方法

Actionの引数にGetパラメータを指定する場合

Request Parameters and Binding | Revel - A Web Application Framework for Go!

func (c AppController) Action(name string) revel.Result {
    ...
}

この場合にはRevelのroutesを利用しようとすると引数指定を強制される。

routes.AppController.Action("kmszk") // -> ◯
routes.AppController.Action() // -> × ビルド時にエラーになる

コントローラのBinderを利用する方法

Request Parameters and Binding | Revel - A Web Application Framework for Go!

// Example params to binder
func (c SomeController) Action() revel.Result {
    var name string
    c.Params.Bind(&name, "name")
    ...
}

この場合にはRevelのroutesを利用しようとすると引数指定を強制されない。

routes.SomeController.Action() // -> ◯

Getパラメータが必須かどうか、指定することを強制するかどうかで使い分けると良さそう。