簡體   English   中英

Django 1.7應用注冊表:基於數據庫查詢定義空白/必需

[英]Django 1.7 app registry: defining blank/required based on DB query

我有一個數據庫字段,在其中我希望required值取決於存儲在數據庫中的某些設置。 作為一個簡單的例子:

class ModelSetting(models.Model):
    key=models.CharField(unique=True)
    value=models.BooleanField()

def get_setting(key):
    return ModelSetting.objects.get(key=key).value

class MyModel(models.Model):
    phone_number=models.CharField(required=get_setting("phone_required"))

問題在於ModelSetting是在與MyModel完全不同的模塊中MyModel ,因此我猜想在導入時(當評估phone_number字段時)無法使用ModelSetting模型。 是這樣嗎 並且有可能的解決方法嗎?

django.core.exceptions.AppRegistryNotReady: Models aren't loaded yet.

required不是對models.CharField的有效選項,您可能想設置為blank

您確定要模型依賴數據庫中的設置嗎? 這意味着當模型設置更改時,Django將提示您進行遷移。

另一種方法是在模型字段中設置blank=True ,然后檢查表單中的phone_required設置。 這樣,您應該能夠避免AppRegistryNotReady錯誤。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM