Skip to main content

Module posts

Module posts 

Source
Expand description

文章 CRUD 相关接口。 文章模块:提供文章的 CRUD、列表、搜索、标签聚合与统计等 server function。

所有 Leptos server function 均注册在 /api 路径下,供前端与服务端调用。 仅在 feature = "server" 启用的服务端构建中执行数据库操作与缓存失效。

Modules§

archive 🔒
固定大小的公开归档分页,与首页列表的 50 条上限独立。
batch 🔒
后台文章的批量操作:发布、转为草稿、移到回收站。
create 🔒
创建文章接口。
delete 🔒
删除文章接口。
helpers 🔒
文章模块内部辅助函数。
list 🔒
文章列表查询接口。
mermaid_preview 🔒
后台编辑器的 Mermaid 预览:与文章保存时同一套服务端渲染。
outline 🔒
首页「最新一篇」的目录预览接口。
read 🔒
文章详情查询接口。
rebuild 🔒
批量重建文章 HTML 与目录。
roundtrip 🔒
富文本编辑器往返守卫:比较原文与编辑器往返后的 Markdown 渲染结果。
search 🔒
文章全文搜索接口。
service 🔒
文章写入业务:已鉴权入口传入作者,统一执行校验、事务和提交后缓存失效。
stats 🔒
文章统计接口。
suggest 🔒
搜索面板(⌘K)的文章建议接口。
tags 🔒
标签列表接口。
trash 🔒
回收站操作接口:恢复、彻底删除、批量操作与一键清空。
types 🔒
文章 API 的请求与响应数据结构。
update 🔒
更新文章接口。
validation 🔒
与认证方式无关的文章写入校验。

Structs§

AdminPostQuery
文章 API 的请求与响应数据结构。 后台文章列表的筛选条件。各项为空表示不按该项筛选。
ArchiveResponse
BatchPostResult
文章 API 的请求与响应数据结构。 批量操作结果:成功篇数与失败篇数。
CreatePostResponse
文章 API 的请求与响应数据结构。 创建/更新/删除文章的统一响应结构。
PathRecommendations
搜索面板(⌘K)的文章建议。 404 页「也许你在找」:从地址里拆出的词。
PostListResponse
文章 API 的请求与响应数据结构。 文章列表响应。
PostOutline
文章 API 的请求与响应数据结构。 首页「最新一篇」的目录预览:一级小节总数与前几个小节标题。
PostStatsResponse
文章 API 的请求与响应数据结构。 文章统计响应。
PostSuggestion
文章 API 的请求与响应数据结构。 搜索面板(⌘K)里的一条文章建议:只含标题、摘要、发布时间与标签。
PostSuggestionResponse
文章 API 的请求与响应数据结构。 文章建议响应。
PublicPostResponse
文章 API 的请求与响应数据结构。 阅读页详情不携带原始 Markdown;完整响应保留给编辑、预览和旧客户端。
RebuildResult
文章 API 的请求与响应数据结构。 Markdown 重建结果响应。
SinglePostResponse
文章 API 的请求与响应数据结构。 单篇文章详情响应。
TagListResponse
文章 API 的请求与响应数据结构。 标签列表响应。
YearCount
某一年发布的篇数。

Enums§

BatchPostAction
文章 API 的请求与响应数据结构。 批量操作:转为草稿或移到回收站。

Constants§

ARCHIVE_PAGE_SIZE
OUTLINE_PREVIEW_LIMIT
文章 API 的请求与响应数据结构。 目录预览列出的小节数。
SUGGESTION_LIMIT
文章 API 的请求与响应数据结构。 文章建议的条数上限。

Functions§

batch_posts
后台列表批量操作(转为草稿、移到回收站)。 对多篇文章执行同一操作。需要 admin 权限。
batch_purge_posts
恢复已删除文章。 批量彻底删除文章。
batch_restore_posts
恢复已删除文章。 批量恢复文章。
check_markdown_roundtrip
富文本编辑器往返渲染一致性检查。 富文本编辑器载入正文后比较原文与往返 Markdown:两者渲染出的 HTML 完全相同才返回 true。
create_post
创建新文章。 创建一篇新文章。
delete_post
删除指定文章。 删除指定文章。
empty_trash
恢复已删除文章。 清空回收站:彻底删除所有已软删除的文章。
get_post_by_id
根据 id 获取文章详情。 根据 slug 获取已发布文章详情(公开)。 按 slug 预览文章(管理员,含草稿)。 根据文章 id 获取详情。
get_post_by_slug
根据 id 获取文章详情。 根据 slug 获取已发布文章详情(公开)。 按 slug 预览文章(管理员,含草稿)。 根据 slug 获取公开文章详情。
get_post_preview
根据 id 获取文章详情。 根据 slug 获取已发布文章详情(公开)。 按 slug 预览文章(管理员,含草稿)。 管理员按 slug 预览文章(含草稿),不缓存、不带上下篇导航。
get_post_stats
获取文章统计信息。 获取文章统计信息。
get_posts_by_tag
获取已发布文章分页列表。 获取指定标签下的全部已发布文章(上限 200),用于无分页 UI 的标签详情页。 结果缓存于按标签的键空间。
get_public_post_by_slug
根据 id 获取文章详情。 根据 slug 获取已发布文章详情(公开)。 按 slug 预览文章(管理员,含草稿)。 阅读页使用独立协议,避免新部署破坏已打开页面的旧客户端。
latest_post_outline
首页最新一篇的目录预览。 获取最新一篇已发布文章的目录预览;没有文章或文章没有小节时返回 None。
list_archive_posts
list_deleted_posts
获取回收站中已软删除的文章列表。 获取回收站中已软删除的文章列表。
list_posts
获取管理员视角的全部文章分页列表。 获取后台文章列表(含草稿,不含回收站),按创建时间倒序。
list_published_posts
获取已发布文章分页列表。 获取已发布文章分页列表。
list_tags
获取全部标签及其文章数量。 获取全部标签列表。
posts_per_year
每年发布的篇数,按年份升序;中间没有文章的年份补 0。关于页的柱状图使用, 在服务端聚合并随文章列表缓存一起失效。
purge_post
恢复已删除文章。 彻底删除一篇已删除的文章(物理删除,不可恢复)。
rebuild_content_html
重新渲染文章的 Markdown HTML 与目录。 批量重建文章 content_html 与 toc_html(单批,客户端按游标续传)。
rebuild_post_content_html
重新渲染指定文章的 Markdown HTML 与目录(单篇)。 重新渲染指定文章的 content_html 与 toc_html。
recommend_for_path
搜索面板(⌘K)的文章建议。 按地址里的词匹配已发布文章的标题与 slug,命中词多的排前,最多 3 篇。 地址里没有可用的词时不查询。公开接口,结果不缓存(只在 404 时调用)。
render_mermaid_preview
后台编辑器的 Mermaid 预览(服务端渲染)。 渲染一张图,返回浅色、深色两份 SVG 的 HTML(mermaid-light / mermaid-dark 两个 div)。
restore_post
恢复已删除文章。 恢复一篇已删除的文章(将 deleted_at 置空)。
search_posts
全文搜索已发布文章。 搜索已发布文章。
suggest_posts
搜索面板(⌘K)的文章建议。 搜索面板的文章建议。
update_post
更新指定文章。 更新指定文章。