【问题标题】:How to share data sets between Wagtail ( ModelAdmin ) and Django Rest API如何在 Wagtail ( ModelAdmin ) 和 Django Rest API 之间共享数据集
【发布时间】:2021-05-30 11:07:45
【问题描述】:
我正在使用 Wagtail 和 Vue 制作一个短语翻译应用程序。为此,我将短语模型注册到 Waigtail 管理员(使用 ModelAdmin),以便编辑者可以在管理工具中添加新数据集。现在我必须创建 API,以便前端可以获取短语。但问题来了。我找不到为短语创建 API 的方法。在我的理解中,ModelAdmin 显然需要 APIViewSet,但关于文档,只有 PagesAPIViewSet、ImagesAPIViewSet 和 DocumentsAPIViewSet。我有点困惑,因为它不是一个异国情调的案例。
我正在考虑使用自己的数据库为短语 API 制作一个新的 django 应用程序,但我无法想象它会这样做。
【问题讨论】:
标签:
django
django-rest-framework
wagtail
headless
modeladmin
【解决方案1】:
更新
我现在解决了。它运作良好。说明是:
- 只创建一个有两个用户的数据库(我使用了 postgres)。一个用于 wagtail,一个用于 django rest api。
- 授予他们所有权限。 Info
- 设置 django rest api(带有自己的 venv)和其他应用程序(例如,phrasesapi: python manage.py startappphrasesapi)。 -> 使用 django-user 将应用程序连接到数据库。
- 使用 ModelAdmin ( wagtail_hooks ) 和其他应用程序(例如 phrasesapi )设置 wagtail(带有自己的 venv )。这两个应用程序必须具有完全相同的名称。 -> 使用 wagtail-user 将应用程序连接到数据库
现在您可以使用其余 api 或 wagtail cms 对数据库条目(在我的情况下为短语)进行 CRUD。如果有任何不清楚的地方,请发表评论。