Go言語WebフレームワークGinのスキャフォルディングがない。
Gin Scaffold
https://github.com/dcu/gin-scaffold
これの使い方
インストールする。
go get github.com/dcu/gin-scaffold
git-scaffold init プロジェクト名
でプロジェクト生成。
僕は~/bin/
の下にあるので・・。
~/bin/gin-scaffold init scatest
中身はこうなってた。
> ls scatest config controllers helpers models scatest.go
起動するのはscatest.go
だ。
go run scatest.go
そのままでは、パスがフルパスだったので
import( //"/Users/shinriyo/scatest/controllers" "scatest/controllers"
を修正した。
デフォルトでは、4000番ポートでアクセス。
http://localhost:4000/
にアクセスする。
他のフレームワークとかぶったりするので、
変えたい時はscatest.go
のport = "4001"
を変える。
scaffoldを使う時
準備
github.com/Sirupsen/logrus
これはだめ。Userは大文字開始
~/bin/gin-scaffold scaffold user name:int
controllers/users.go:6:2: cannot find package "models" in any of: /usr/local/opt/go/libexec/src/models (from $GOROOT) /Users/shinriyo/src/models (from $GOPATH)
さもなくばエラー。
~/bin/gin-scaffold scaffold User name:int
models/user.go
がおかしい。
// User is a model type User struct { ID bson.ObjectId `bson:"_id,omitempty"` // name int `bson:"name"` name string `bson:"name"` CreatedAt int64 `bson:"created_at"` UpdatedAt int64 `bson:"updated_at"` Errors helpers.Errors `bson:"-"` }
int
ではなくてstring
に。
MongoDBを入れる
この辺を見て起動しておく
アクセス
http://localhost:4000/users
{"count":0,"items":[],"success":true}