هل من الممكن أتمتة جميع الهياكل تلقائيًا؟
في الوقت الحالي ، يبدو أن اسم كل بنية يتم ترحيلها يجب أن يتم تمريره إلى هذه الوظيفة https://github.com/jinzhu/gorm/blob/690cb1430c2e27011324c51826301a7daf728e65/main.go#L261
نظرًا لأن gorm لا يمكنه معرفة البنية التي تريد ترحيلها ، لذلك لا يمكن القيام بذلك تلقائيًا.
لكني أفعل شيئًا كهذا في طلبي.
package main
import (
"fmt"
. "xxx.com/xxxx/xxxx/app/models"
. "xxx.com/xxxx/xxxx/db"
"reflect"
)
func main() {
for _, model := range []interface{}{
Payment{}, Invoice{}, Transaction{},
SubscriptionService{}, SubscriptionBenefit{}, Subscription{},
Address{}, User{}, UserService{},
Service{},
} {
if err := DB.AutoMigrate(model).Error; err != nil {
fmt.Println(err)
} else {
fmt.Println("Auto migrating", reflect.TypeOf(model).Name(), "...")
}
}
}
شكرا على الاكرامية!
في الخميس ، 2 يناير 2014 الساعة 1:49 مساءً ، كتب Jinzhu [email protected] :
مغلق # 38 https://github.com/jinzhu/gorm/issues/38.
-
قم بالرد على هذه الرسالة الإلكترونية مباشرة أو tHubhttps: //github.com/jinzhu/gorm/issues/38
.
الآن ، هل لديك طريقة جديدة لحلها؟
شكرا. تضمين التغريدة
التعليق الأكثر فائدة
نظرًا لأن gorm لا يمكنه معرفة البنية التي تريد ترحيلها ، لذلك لا يمكن القيام بذلك تلقائيًا.
لكني أفعل شيئًا كهذا في طلبي.