Gorm: Alle Strukturen automatisch automatisieren

Erstellt am 2. Jan. 2014  ·  3Kommentare  ·  Quelle: go-gorm/gorm

Ist es möglich, alle Strukturen automatisch zu automatisieren?

Derzeit scheint es, als müsste der Name jeder zu migrierenden Struktur an diese Funktion übergeben werden https://github.com/jinzhu/gorm/blob/690cb1430c2e27011324c51826301a7daf728e65/main.go#L261

Hilfreichster Kommentar

Da gorm nicht wissen kann, welche Struktur Sie migrieren möchten, kann dies nicht automatisch erfolgen.

Aber ich mache so etwas in meiner Bewerbung.

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(), "...")
        }
    }
}

Alle 3 Kommentare

Da gorm nicht wissen kann, welche Struktur Sie migrieren möchten, kann dies nicht automatisch erfolgen.

Aber ich mache so etwas in meiner Bewerbung.

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(), "...")
        }
    }
}

Danke für den Tipp!

Am Do, 2. Januar 2014 um 13:49 Uhr schrieb Jinzhu [email protected] :

Geschlossen #38 https://github.com/jinzhu/gorm/issues/38.


Antworten Sie direkt auf diese E-Mail oder zeigen Sie sie auf Gi tHub anhttps://github.com/jinzhu/gorm/issues/38
.

Haben Sie jetzt eine neue Methode, um es zu lösen?
Vielen Dank. @jinzhu

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen