go-gorm, как выразить many2many с помощью дополнительных столбцов

Я хочу выразить следующие таблицы в GORM:

CREATE TABLE indexes (
    id INTEGER PRIMARY KEY,
    name VARCHAR
)
CREATE TABLE services (
    id INTEGER PRIMARY KEY,
    name VARCHAR
)
CREATE TABLE index_service (
    index_id INTEGER REFERENCES indexes(id),
    service_id INTEGER REFERENCES services(id),
    write_active INTEGER,
    PRIMARY KEY (index_id, service_id)
)

После прочтения документации и вопросов по переполнению стека. Я все еще не могу найти ответ о том, как выразить дополнительный столбец write_active в DSL GORM

Что я получил так далеко,

type Index struct {
   ID        unit `json:"id" gorm:"primary_key"`
   Name string    `json:"name" gorm:"not null"`
}

type Service struct {
   ID        unit `json:"id" gorm:"primary_key"`
   Name string    `json:"name" gorm:"not null"`
}

Однако я не знаю, как написать составную таблицу.

0 ответов

Вам нужно создать дополнительную модель, как это:

package database

type IndexService struct {
  WriteActive bool `gorm:"not null,DEFAULT false"`
}

Другие вопросы по тегам