我定义的模型代码是这样的:
type User struct {
gorm.Model
TenantID stringjson:"tenantID" gorm:"-"UserName stringjson:"userName" gorm:"column:user_name;comment:用户名;size:64;"Password stringjson:"password" gorm:"column:password;comment:密码;size:64;"`
}
func (u User) TableName() string { return "users_" + u.TenantID } `
当我执行:
DB.AutoMigrate(po.User{TenantID:“123”})
创建的表名却是: “users_”
为什么TableName()方法的User结构体中TenantID为“”?
Comment From: github-actions[bot]
The issue has been automatically marked as stale as it missing playground pull request link, which is important to help others understand your issue effectively and make sure the issue hasn't been fixed on latest master, checkout https://github.com/go-gorm/playground for details. it will be closed in 30 days if no further activity occurs. if you are asking question, please use the Question template, most likely your question already answered https://github.com/go-gorm/gorm/issues or described in the document https://gorm.io ✨ Search Before Asking ✨
Comment From: a631807682
NOTE TableName doesn’t allow dynamic name, its result will be cached for future, to use dynamic name, you can use Scopes
https://gorm.io/docs/conventions.html#TableName