在一个包中处理起草和生产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第三方库


热门话题
java这种src与构建树时间戳的比较如何更快?   java如何在两个命令处理程序之间通信   java下拉框值更改   Java如何从另一个类中提取字段的值   无字段名的java Jackson序列化   java游戏循环和方法调用   java Spring Security permitAll()匹配器被忽略   java如何在一个方法中将数组中的int作为单独的int传递?   使用ArrayList在Java中实现同步队列   java JButton的操作侦听器在JTable中不工作   java中C++ OOP指针的技巧   java My regex搜索只打印出最后一个匹配项   java如何在Hadoop中序列化非常大的可写对象   spring Paypal JavaSDK支付执行问题   带有SPNEGO SSO的java Tomcat 6仍会提示输入登录名和密码   java HttpResponse主体正在更改   java如何在RxJava中实现链锁   为什么我需要java。lang.ClassNotFoundException:com。mysql。希杰。jdbc。mysqlconnectorjava8时的驱动程序。0.16.jar在类路径中?   java输入错误。即使在接受新输入后仍使用旧输入