Your Question

I use want add two fields priority index, first is id and organization_id in patient, second is id and organization_id in user, but I get this error,

ERROR: relation "idx_patient_id_organization_id" already exists (SQLSTATE 42P07) [1.706ms] [rows:0] CREATE INDEX "idx_patient_id_organization_id" ON "patient_user_relation" ("patient_id")

ERROR: relation "idx_user_id_organization_id" already exists (SQLSTATE 42P07) [1.926ms] [rows:0] CREATE INDEX "idx_user_id_organization_id" ON "patient_user_relation" ("user_id")

type Patient struct {
    ID             uuid.UUID `gorm:"primaryKey;uniqueIndex;type:uuid;default:uuid_generate_v4();index:idx_patient_id_organization_id,unique"`
    CreatedAt      time.Time `gorm:"not null;default:CURRENT_TIMESTAMP"`
    UpdatedAt      *time.Time
    DeletedAt      *time.Time
    FirstName      string
    LastName       string
    // belongs to Organization
    OrganizationId uuid.UUID `gorm:"index;index:idx_patient_id_organization_id,unique;index:idx_patient_provider_id_organization_id,unique"`
    Organization   Organization

    // many to many
    Users []*User `gorm:"many2many:patient_user_relation"`
}

type User struct {
    ID             uuid.UUID `gorm:"primaryKey;uniqueIndex;type:uuid;default:uuid_generate_v4();index:idx_user_id_organization_id,unique"`
    CreatedAt      time.Time `gorm:"not null;default:CURRENT_TIMESTAMP"`
    UpdatedAt      *time.Time
    DeletedAt      *time.Time
    FirstName      string
    LastName       string
    DisplayName    string

    // belongs to Organization
    OrganizationId uuid.UUID `gorm:"index:idx_user_id_organization_id,unique"`
    Organization   Organization
}