在其他应用程序中使用 Django 管理站点

Using Django admin site in other applications

我的目标是开发一个 Web 应用程序,它可以从数据库中检索数据并将它们显示在 table 中。

我是网络开发的新手,这个任务不是我的主要目标,因此,我想为此付出最少的努力。

我选择 Django 来完成这项任务。我已经从官方教程中熟悉了它的管理站点,并且可以得出结论,它具有所有必需的功能(检索、排序、过滤、搜索)。

同时,我安装了 django-tables2。它需要更多的努力,例如编写 CSS 模板,而 admin 已包含所有内容。

是否可以像普通的web app一样使用那个管理站点,只显示数据,不添加或删除?

是的,你可以做到。我以前做过。挑战在于创建目标数据库结构。 Django 有一个 manage.py inspectdb 命令,可用于从目标数据库生成模型。您只需要覆盖 ModelAdmin,因此您无法保存它。

class CustomAdmin(admin.ModelAdmin):

    def save_model(self, request, obj, form, change):
        pass