第一版完成
This commit is contained in:
67
internal/model/article.go
Normal file
67
internal/model/article.go
Normal file
@@ -0,0 +1,67 @@
|
||||
package model
|
||||
|
||||
import (
|
||||
"github.com/gogf/gf/v2/os/gtime"
|
||||
)
|
||||
|
||||
// Article 文章模型
|
||||
type Article struct {
|
||||
Id int `json:"id" dc:"主键"`
|
||||
Title string `json:"title" dc:"标题"`
|
||||
Slug string `json:"slug" dc:"URL别名"`
|
||||
Summary string `json:"summary" dc:"摘要"`
|
||||
Content string `json:"content" dc:"内容(Markdown)"`
|
||||
HtmlContent string `json:"html_content" dc:"HTML内容"`
|
||||
CoverImage string `json:"cover_image" dc:"封面图片"`
|
||||
CategoryId int `json:"category_id" dc:"分类ID"`
|
||||
Tags interface{} `json:"tags" dc:"标签"`
|
||||
AuthorId int `json:"author_id" dc:"作者ID"`
|
||||
ViewCount int `json:"view_count" dc:"浏览次数"`
|
||||
LikeCount int `json:"like_count" dc:"点赞次数"`
|
||||
CommentCount int `json:"comment_count" dc:"评论次数"`
|
||||
IsPublished int `json:"is_published" dc:"是否发布 0:草稿 1:已发布"`
|
||||
IsFeatured int `json:"is_featured" dc:"是否推荐 0:否 1:是"`
|
||||
IsTop int `json:"is_top" dc:"是否置顶 0:否 1:是"`
|
||||
SeoTitle string `json:"seo_title" dc:"SEO标题"`
|
||||
SeoDescription string `json:"seo_description" dc:"SEO描述"`
|
||||
SeoKeywords string `json:"seo_keywords" dc:"SEO关键词"`
|
||||
PublishedAt *gtime.Time `json:"published_at" dc:"发布时间"`
|
||||
CreatedAt *gtime.Time `json:"created_at" dc:"创建时间"`
|
||||
UpdatedAt *gtime.Time `json:"updated_at" dc:"更新时间"`
|
||||
DeletedAt int `json:"deleted_at" dc:"删除时间"`
|
||||
}
|
||||
|
||||
// CreateArticleRequest 创建文章请求
|
||||
type CreateArticleRequest struct {
|
||||
Title string `json:"title" v:"required|length:1,255#标题不能为空|标题长度不能超过255字符" dc:"标题"`
|
||||
Slug string `json:"slug" v:"length:0,255#URL别名长度不能超过255字符" dc:"URL别名"`
|
||||
Summary string `json:"summary" dc:"摘要"`
|
||||
Content string `json:"content" v:"required#内容不能为空" dc:"内容(Markdown)"`
|
||||
CoverImage string `json:"cover_image" dc:"封面图片"`
|
||||
CategoryId int `json:"category_id" dc:"分类ID"`
|
||||
Tags []string `json:"tags" dc:"标签"`
|
||||
AuthorId int `json:"author_id" dc:"作者ID"`
|
||||
IsPublished int `json:"is_published" dc:"是否发布"`
|
||||
IsFeatured int `json:"is_featured" dc:"是否推荐"`
|
||||
IsTop int `json:"is_top" dc:"是否置顶"`
|
||||
SeoTitle string `json:"seo_title" dc:"SEO标题"`
|
||||
SeoDescription string `json:"seo_description" dc:"SEO描述"`
|
||||
SeoKeywords string `json:"seo_keywords" dc:"SEO关键词"`
|
||||
}
|
||||
|
||||
// UpdateArticleRequest 更新文章请求
|
||||
type UpdateArticleRequest struct {
|
||||
Title string `json:"title" v:"required|length:1,255#标题不能为空|标题长度不能超过255字符" dc:"标题"`
|
||||
Slug string `json:"slug" v:"required|length:1,255#URL别名不能为空|URL别名长度不能超过255字符" dc:"URL别名"`
|
||||
Summary string `json:"summary" v:"required#摘要不能为空" dc:"摘要"`
|
||||
Content string `json:"content" v:"required#内容不能为空" dc:"内容"`
|
||||
CoverImage string `json:"cover_image" dc:"封面图片"`
|
||||
CategoryId int `json:"category_id" dc:"分类ID"`
|
||||
Tags []string `json:"tags" dc:"标签"`
|
||||
IsPublished int `json:"is_published" v:"in:0,1#发布状态只能为0或1" dc:"是否发布"`
|
||||
IsFeatured int `json:"is_featured" v:"in:0,1#推荐状态只能为0或1" dc:"是否推荐"`
|
||||
IsTop int `json:"is_top" v:"in:0,1#置顶状态只能为0或1" dc:"是否置顶"`
|
||||
SeoTitle string `json:"seo_title" dc:"SEO标题"`
|
||||
SeoDescription string `json:"seo_description" dc:"SEO描述"`
|
||||
SeoKeywords string `json:"seo_keywords" dc:"SEO关键词"`
|
||||
}
|
||||
Reference in New Issue
Block a user