package models // Swagger-friendly (light) structs for documentation only. // These avoid embedding external types (gorm.Model) so `swag` can parse them. type CategoryDoc struct { ID uint `json:"id"` Title string `json:"title"` Description string `json:"description,omitempty"` ParentID *uint `json:"parent_id,omitempty"` Children []CategoryDoc `json:"children,omitempty"` } type TagDoc struct { ID uint `json:"id"` Name string `json:"name"` } type PostDoc struct { ID uint `json:"id"` Title string `json:"title"` Content string `json:"content,omitempty"` Images []string `json:"images,omitempty"` Categories []CategoryDoc `json:"categories,omitempty"` Tags []TagDoc `json:"tags,omitempty"` } type CommentDoc struct { ID uint `json:"id"` UserID uint `json:"user_id"` PostID uint `json:"post_id"` Body string `json:"body,omitempty"` } type CategoryViewDoc struct { ID uint `json:"id"` CategoryID uint `json:"category_id"` IPAddress string `json:"ip_address,omitempty"` }