在一个包中处理起草和生产Invenio记录

oarepo-invenio-records-draft的Python项目详细描述


库原则:

  1. 草稿记录应遵循与已发布记录相同的json模式,但有一个例外 所有/大多数属性都不是必需的,即使它们被标记为这样

  2. 草稿记录应遵循与已发布记录相同的棉花糖架构 一些例外:

    < Buff行情>
    1. 所有/大多数属性都不是必需的,即使它们被标记为这样
    2. 对于附加了验证器的属性,这些验证器将被忽略, 除非它们被明确标记为允许吃水
  3. 如果愿意的话,草稿记录可能被配置为完全不遵循模式。在这种情况下, 该记录在ElasticSearch中根本没有索引。

  4. "草稿"记录与已发布的记录位于不同的端点和不同的ES索引。 对于已发布的记录和 /api/drafts/records 用于草稿

  5. 草稿和已发布的记录共享相同的pid值,但具有两种不同的pid类型

  6. 无法直接创建/更新/修补已发布的记录。草稿记录可以是 创建/更新/修补。

  7. invenio记录包含json负载中的 link 头和 links 节。 已发布记录的链接包含(除了 self ):

    < Buff行情>
    1. 草稿 -链接到记录"草稿"版本的URL。此URL存在 仅当记录的草稿版本存在并且调用方具有 编辑草稿
    2. 编辑 -指向创建记录草稿版本的处理程序的URL,然后 返回http 302重定向到草稿版本。只有当 草稿版本不存在
    3. 取消发布 -指向创建记录草稿版本的处理程序的URL 如果不存在,则删除已发布的版本,然后将http 302返回草稿。
  8. 在草稿记录中, 链接包含(除了 self ):

    < Buff行情>
    1. 已发布 -链接到记录的"已发布"版本的URL。此URL存在 o仅当记录的已发布版本存在时
    2. 发布 -发布到此url的帖子将发布记录。松下和棉花糖 必须传递已发布记录的架构。发布后,草稿记录是 删除。返回的http 302指向已发布的记录。
  9. 草稿记录的序列化表示包含名为 invenio_draft_validation 的节。 本节包含棉花糖和jsonschema对原始 模式:

  10. 删除已发布的记录不会删除草稿记录。

  11. 删除草稿记录不会删除已发布的记录。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
box api如何使用box Java SDK从图像文件中获取特定大小的缩略图?   java无法从JNA使用python cffi调用DLL中定义的函数   java在linux中通过Jar文件发送电子邮件   使用lucene+hibernate的java查询时间连接   java在带有循环的arrayList中设置值   java为什么ImageReader返回错误的BuffereImage?   c#TCP数据有时接收顺序错误且不完整   java如果发生IOException,该InputStream是否会正确关闭?   tcp在Java中,如果不使用IP,如何获取MAC地址?   java从批处理方法调用中收集结果   java Android Studio RecyclerView在滚动图像时严重滞后   java如何使用OOP进行retrofti调用?   记录FileAppender在Java中如何工作   与S3连接期间收到java异常   java找不到JNDI资源Tomcat 7