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)
horie1024.hatenablog.com
さもなくばエラー。
~/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を入れる
この辺を見て起動しておく
qiita.com
アクセス
http://localhost:4000/users
{"count":0,"items":[],"success":true}