是否将文章加锁?

我们会有这样的需求,想将文章加锁,这样其它的用户访问你将获得豆子点数奖励,或者我们想将加锁的文章重新设置为不加锁。今天,我们实现这个功能,方便我们修改文章是否加锁。

注意,将文章加锁,需要先将文章公开。

修改文章是否加锁,我打算使用的命令格式如下:

gart lock uuid islock

其中,紧挨着 gart 的 lock 是命令,表示要更新文章是否加锁,uuid 是文章的主键,可以查询识别是哪篇文章,islock 只允许设置 0 或者 1,1 为加锁。

实现的代码如下:


func init() {
	rootCmd.AddCommand(uptLockCmd)
}

var uptLockCmd = &cobra.Command{
	Use:   "lock",
	Short: "更新文章是否加锁,参数需要UUID,新的加锁开关,只允许0或1,1为加锁。",
	Long:  `更新文章是否加锁,参数需要UUID,新的加锁开关,只允许0或1,1为加锁,需要先获取文章的UUID。`,
	Args:  cobra.MinimumNArgs(2),
	Run: func(cmd *cobra.Command, args []string) {
		uuid := args[0]
		islock := utils.Str2Int(args[1])
		uar := service.UpdateArtReq{
			Uuid:    uuid,
			IsLock:  islock,
			UptType: 5,
		}
		err := service.UpdateArt(token, &uar)
		if err != nil {
			fmt.Println("更新加锁开关发生错误,", err)
		} else {
			fmt.Println("更新成功")
		}
	},
}

实现比较简单,除了看命令行输出,还可以去小程序中查看实际结果。