是否可以在Django中从数据库动态加载变量的值?
我是Django的新手。我试图通过管理面板将此值赋予此settings.py的文件变量。
from django.db import models
class Person(models.Model):
RECAPTCHA_PUBLIC_KEY = models.CharField(max_length=100)
RECAPTCHA_PRIVATE_KEY = models.CharField(max_length=100)
RECAPTCHA_PUBLIC_KEY = '' #How to set this value from admin panel dynamically
RECAPTCHA_PRIVATE_KEY = ''
我必须在项目中安装“ captch”应用程序,因此,需要设置必要键的值,但是我试图从数据库中设置该值。我可以从数据库中更改值吗?(如果您有新的想法可以动态地实现这一点,请也建议我。)
谢谢。
答案 0 :(得分:0)
是否可以在Django中从数据库动态加载变量的值?
是的。您可以在运行时通过管理界面使用django-constance
之类的应用来支持动态设置。
但是,我认为从您的模型中看不出来这就是您要尝试执行的操作。如果每个Person
实例的Recaptcha键都不相同,那么这些根本不是设置(或常量),它们只是按人值,应将其视为普通模型字段。
如果每个Person可以拥有自己的键,但是系统 还需要默认值以用于没有键的Person实例,那么将一组键存储为设置,并且每个人的设置可能会有所不同(尽管当前的模型编写方式不是这样,因为这些关键字段不可为空)。