更新文章内容
当我们写好了文章,并上传到服务器,我们在修改调整本地 Markdown 文件后,服务器上的文章并不会更新,所以,如果你想要将更新的内容反馈到服务器上时,你可以修改文章的内容。今天,我们实现这个功能,方便我们修改文章内容。
修改文章内容,我打算使用的命令格式如下:
gart content uuid newfilename
其中,紧挨着 gart 的 content 是命令,表示要更新文章内容,uuid 是文章的主键,可以查询识别是哪篇文章,newfilename 是修改内容后的文件名称。
实现的代码如下:
func init() {
rootCmd.AddCommand(uptContentCmd)
}
var uptContentCmd = &cobra.Command{
Use: "content",
Short: "更新文章内容,参数需要UUID,新的文件内容。",
Long: `更新文章内容,参数需要UUID,新的文件内容,需要先获取文章的UUID。`,
Args: cobra.MinimumNArgs(2),
Run: func(cmd *cobra.Command, args []string) {
uuid := args[0]
filename := args[1]
content, err := service.GetFileContent(filename)
if err != nil {
fmt.Println("读取文件内容发生错误,", err)
return
}
uar := service.UpdateArtReq{
Uuid: uuid,
Content: string(content),
UptType: 3,
}
err = service.UpdateArt(token, &uar)
if err != nil {
fmt.Println("更新内容发生错误,", err)
} else {
fmt.Println("更新成功")
}
},
}
实现比较简单,除了看命令行输出,还可以去小程序中查看实际结果。