luds 发表于 2021-11-8 02:45:23

内容管理的内容,如何修改publishTime(发布时间)?

本帖最后由 luds 于 2021-11-8 09:36 编辑


需求:
      用户在发了新闻内容之后,经常希望修改发布的时间,一是为了看起来更接近新闻发生时间,二是为了排序需要。
      所以希望有一种方式能修改发布时间。
       ps:虽然可以通过自定义字段来设置另一个“发布时间”,但是前台输出时不便排序,在后台内容管理处也和现有的发布时间字段不匹配。



尝试方法一(保存表单时修改):
在发布表单的beforeSave事件中,虽然手动修改了发布时间publishTime,且查看xhr请求特定字段已发送,也返回成功,但再次打开看不到修改后的结果:
this.documentContext.getDocument().publishTime = '2021-11-05 18:18:18'
this.data.$document.createTime = '2021-11-05 00:00:00'
看了源码com.x.cms.assemble.control.jaxrs.document ActionPersistSaveDocument.java发现确实后端不支持修改该字段。

尝试方法二(通过api修改):
persist_save api: http://127.0.0.1:20020/x_cms_assemble_control/jaxrs/document
persist_batchDataModifyapi: http://127.0.0.1:20020/x_cms_ass ... t/batch/data/modify
persist_batchDataModifyMockPutToPostapi:http://127.0.0.1:20020/x_cms_ass ... odify/mockputtopost
这些api经测试可以修改title、docStatus、置顶等字段,但就是无法修改发布时间publishTime。
甚至通过先修改状态(docStatus)为草稿(draft),再修改为published并带上publishTime,状态都能变,就是publishTime不变。

那么,有没有别的方式修改该字段?



.







论坛管理员 发表于 2021-11-8 13:23:20

1.发布的时间能修改这个就有点不符合正常的逻辑了。
2.如果想要满足排序需要的,您可以创建自己的列表展现(内容管理-应用-列表展现)。
3.如果想要某个特定时间发布,可以考虑发布信息使用流程,流程中有定时任务。
                                             也可以考虑定时任务中将一些草稿的进行发布

luds 发表于 2021-11-8 22:41:01

感谢回答,已了解!管理员辛苦了

论坛管理员 发表于 2021-11-9 09:42:17

luds 发表于 2021-11-8 22:41
感谢回答,已了解!管理员辛苦了

:$
页: [1]
查看完整版本: 内容管理的内容,如何修改publishTime(发布时间)?