package schema type MediaLoFi struct { Base WebLink string `gorm:"uniqueIndex" json:"url"` Review bool `json:"review"` ShouldDownload bool `json:"should_download"` Title string `gorm:"size:300" json:"title"` FileName string `json:"file_name"` } func (media_lofi *MediaLoFi) TableName() string { return "media_lofi" } type MediaFile struct { Base CloudLink string `json:"cloud_link"` FileName string `json:"file_name"` Path string `json:"path"` Review bool `json:"review"` Title string `gorm:"size:300" json:"title"` WebLink string `gorm:"uniqueIndex" json:"url"` ShouldDownload bool `json:"should_download"` MediaActorFiles []MediaActorFile `gorm:"foreignKey:MediaFileID" json:"media_actor_files"` } func (media_file *MediaFile) TableName() string { return "media_file" } type MediaActor struct { Base Name string `json:"name"` WebLink string `gorm:"uniqueIndex" json:"url"` MediaActorFiles []MediaActorFile `gorm:"foreignKey:MediaActorID" json:"media_actor_files"` } func (media_actor *MediaActor) TableName() string { return "media_actor" } type MediaActorFile struct { Base MediaActorID *string `json:"media_actor_id"` MediaActor *MediaActor `gorm:"foreignKey:MediaActorID" json:"media_actor"` MediaFileID *string `json:"media_file_id"` MediaFile *MediaFile `gorm:"foreignKey:MediaFileID" json:"media_file"` } func (media_file *MediaActorFile) TableName() string { return "media_actor_file" } // type MediaArticle struct { // bun.BaseModel `bun:"table:media_article"` // ID string `bun:"id,pk"` // CreatedAt time.Time `bun:"created_date,nullzero,notnull,default:current_timestamp"` // UpdatedAt time.Time `bun:"last_modified_date,nullzero,notnull,default:current_timestamp"` // Version int `bun:"version,default:0"` // Review bool `bun:"review"` // Title string `bun:"title"` // WebLink string `bun:"url,unique:url"` // } // type MediaVideo struct { // bun.BaseModel `bun:"table:media_article"` // ID string `bun:"id,pk"` // CreatedAt time.Time `bun:"created_date,nullzero,notnull,default:current_timestamp"` // UpdatedAt time.Time `bun:"last_modified_date,nullzero,notnull,default:current_timestamp"` // Version int `bun:"version,default:0"` // CloudLink string `bun:"cloud_link"` // FileName string `bun:"file_name"` // Path string `bun:"path"` // Review bool `bun:"review"` // Title string `bun:"title"` // WebLink string `bun:"url,unique:url"` // ShouldDownload bool `bun:"should_download"` // }