如何在 Wagtail ( ModelAdmin ) 和 Django Rest 之间共享数据集 API

How to share data sets between Wagtail ( ModelAdmin ) and Django Rest API

我正在使用 Wagtail 和 Vue 制作一个短语翻译应用程序。为此,我将短语模型注册到 Waigtail 管理(使用 ModelAdmin),以便编辑可以在管理工具中添加新数据集。现在我必须创建 API 以便前端可以获取短语。但问题来了。我找不到为短语创建 API 的方法。在我的理解中,ModelAdmin 显然需要 APIViewSet,但关于文档,只有 PagesAPIViewSet、ImagesAPIViewSet 和 DocumentsAPIViewSet。我有点困惑,因为这不是一个奇特的案例。

我正在考虑使用自己的数据库为短语 API 制作一个新的 django 应用程序,但我无法想象它会那样做。

更新

我现在解决了。它运作良好。说明是:

  1. 只为两个用户创建一个数据库(我使用的是 postgres)。一个用于 wagtail,一个用于 django rest api.
  2. 授予他们所有权限。 Info
  3. 设置 django rest api(有自己的 venv)和额外的应用程序(例如 phrasesapi: python manage.py startapp phrasesapi ) . -> 使用 django-user 将应用程序连接到数据库。
  4. 使用 ModelAdmin (wagtail_hooks) 和一个额外的应用程序(例如 phrasesapi)设置 wagtail(有自己的 venv)。这两个应用程序必须具有完全相同的名称。 -> 使用 wagtail-user
  5. 将应用程序连接到数据库

现在您可以使用其余 api 或 wagtail cms 对数据库条目(在我的例子中是短语)进行 CRUD。有什么不明白的可以留言。