migration.tpl 690 B

12345678910111213141516171819202122232425262728293031323334
  1. package migrations
  2. import (
  3. "database/sql"
  4. "gorm.io/gorm"
  5. "github.com/runningwater/gohub/app/models"
  6. "github.com/runningwater/gohub/pkg/migrate"
  7. )
  8. func init() {
  9. type User struct {
  10. models.BaseModel
  11. Name string `gorm:"type:varchar(255);not null;index"`
  12. Email string `gorm:"type:varchar(255);index;default:null"`
  13. Phone string `gorm:"type:varchar(20);index;default:null"`
  14. Password string `gorm:"type:varchar(255)"`
  15. models.CommonTimestampsField
  16. }
  17. up := func(migrator gorm.Migrator, DB *sql.DB) {
  18. migrator.AutoMigrate(&User{})
  19. }
  20. down := func(migrator gorm.Migrator, DB *sql.DB) {
  21. migrator.DropTable(&User{})
  22. }
  23. migrate.Add(up, down, "{{FileName}}")
  24. }