Guillotina Postgresql集成
项目描述
guillotina_asyncom
集成新的Content-type DBFolder的POC
- DBFolder代表在postgresql上的一个表,与相关的sqlalchemy模型相关联
优点
- 使用guillotina权限系统
- 使用guillotina框架。
- 在上下文中查找视图(一个sqlalchemy对象)
- 与guillotina gmi接口集成
如何使用
- 创建你的常规sqlalchemy模型,例如,从guillotina_asyncom.db导入Base
from guillotina_asyncom.db import Base
import sqlalchemy as sa
@implementer(IModel)
class Model(Base):
__tablename__ = "extras"
pk = sa.Column(sa.Integer, primary_key=True)
value = sa.Column(sa.JSONB)
每次你想要在你的guillotina内容树中添加一个对象时
POST /db/guillotina/
{
"@type": "DBFolder",
"id", : "dbmodel",
"model": "Model"
}
从这里,我们只需使用我们的新端点的guillotina API。
POST /db/guillotina/dbmodel/ { "value": {"prop", "value"} }
GET /db/guillotina/dbmodel/@search GET /db/guillotina/dbmodel/{pk} DELETE /db/guillotina/dbmodel/{pk} PATCH /db/guillotina/dbmodel/{pk}
以为应该通过为实例注册服务来工作...
POST /db/guillotina/dbmodel/{pk}/@requeue
- 酷功能:它与guillotina_react集成 :)
想法和待办事项
-
从这里构建一个通用的模型浏览器并不难。所有注册的sqlalchemy模型都位于Base.metadata...只需构建一个小遍历即可
-
为每个新类型生成预期的模式,可能是在/db/guillotina/dbmodel/@schema上,从声明式sqlalchemy模型中获取
-
在行上集成权限系统...只需在你的模型中实现一个acl jsonb列。(设置所有者,或任何你想要的..)
-
事件系统尚未实现,可能可以实现,但需要添加一些新事件。(如果我们使用实际值,将会影响目录)
-
实现一个丰富的 @search 模型(最后我们可以直接翻译,实际的实现是 sqlalchemy 查询)。还要实现分页,以及其他功能。这将使它与 guillotina_react 集成得更好。
...
您看到的是截断的变更日志。
您可以阅读 变更日志文件 <https://github.com/plone/guillotina/blob/master/CHANGELOG.rst>
获取完整列表。
项目详情
下载文件
下载适用于您平台的文件。如果您不确定选择哪个,请了解有关 安装包 的更多信息。
源分布
构建分布
guillotina_asyncom-0a1.tar.gz 的哈希
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 446bf075e6fbf74fa93fbaa0ede2fed41104f0f80cfbb41e810fc2f152f3dfff |
|
MD5 | c0e422c3630da552da0e55cc3e584f3f |
|
BLAKE2b-256 | 9ca0175196f9049ada62502b86b3529a75aa0387de4b46780a9c19f9728e08bd |
guillotina_asyncom-0a1-py3-none-any.whl 的哈希
算法 | 哈希摘要 | |
---|---|---|
SHA256 | f600b9c08eadf7049958b6c65171adf2f6472fd7cb849a5923f5ea38e4be4c98 |
|
MD5 | 2c213229bc315f8e746f8f2073b57047 |
|
BLAKE2b-256 | 6378b877f51166bfd923b312cc6c29bf85b4f4903d3c11463845986587bbdd45 |