我的 Django 项目中安装了一些应用程序。我希望一些应用程序能够从其他一些应用程序中获取信息。因此,我希望为每个应用程序提供一些有关权限的基本元信息。
所以,如果我有三个应用程序:A1、A2 和 A3。
我想将 A1 设置为只读。将 A2 设置为读/写。将 A3 设置为无法读取或写入。
元描述主要是为了我自己的理智。这些应用程序不会与我没有编写的应用程序一起使用。
有没有办法在应用程序级别添加此类元数据?也许通过 Django 应用程序的未使用描述字段?
我的 Django 项目中安装了一些应用程序。我希望一些应用程序能够从其他一些应用程序中获取信息。因此,我希望为每个应用程序提供一些有关权限的基本元信息。
所以,如果我有三个应用程序:A1、A2 和 A3。
我想将 A1 设置为只读。将 A2 设置为读/写。将 A3 设置为无法读取或写入。
元描述主要是为了我自己的理智。这些应用程序不会与我没有编写的应用程序一起使用。
有没有办法在应用程序级别添加此类元数据?也许通过 Django 应用程序的未使用描述字段?
不知道为什么你会需要这个,但通常你会将所有元信息放在__init__.py
应用程序中。然后您可以从另一个应用程序访问它:
myapp1/__init__.py
:
version = '0.1.0'
permissions = ['read', 'write']
myapp2/utils.py
:
from django.conf import settings
import importlib
for app_name in settings.INSTALLED_APPS:
app = importlib.import_module(app_name)
if hasattr(app, 'permissions') and 'write' in app.permissions:
do_something()