Я использую Postgres с Go Lang и фреймворком Echo в качестве своей базы, при этом я использую Gorm для построения запросов к базе данных.
Итак, вот моя модель профиля,
type Profile struct {
gorm.Model
InvoiceCount uint `gorm:"-"`
CompanyName string `gorm:"size:255"`
CompanyNumber string `gorm:"size:10"`
CompanyVatNumber string `gorm:"size:10"`
DateAdded time.Time `gorm:"type:date"`
PrimaryEmail string `gorm:"size:255"`
IsActive bool
Invoice []*Invoice `gorm:"foreignkey:profile_fk" json:",omitempty"`
Address []*Address `gorm:"foreignkey:profile_fk" json:",omitempty"`
}
Это связано с моей моделью Invoice, с которой я пытаюсь рассчитать предварительную нагрузку. Я добавил, что у InvoiceCount
есть возможность добавить счет в эту модель.
Так вот, что я связал,
dbCon().
Preload("Invoice", func(db *gorm.DB) *gorm.DB {
return db.Count(&profile)
}).
Find(&profile).
RecordNotFound()
Однако, если я не работаю, он возвращает следующую ошибку: (pq: zero-length delimited identifier at or near """")
Я пытаюсь сделать это простым запросом, но это так? Нужно ли мне просто обвести все мои профили и добавить счетчик для каждого? Или перейти к необработанному SQL-запросу с дополнительным выбором?
Спасибо