![](/img/trans.png)
[英]Selective Foreign Key Usage in Django (maybe with limit_choices_to argument?)
[英]correct usage of limit_choices_to in django models
請幫助我根據公司來限制模型團隊的選擇。 現在,我將測試值“ 1”放到正確的位置(函數_limit_function)。 但是如何根據所選公司動態限制它呢?
class CustomCompany(models.Model):
name = models.CharField(max_length=30,
default="None",
unique=True
)
class CustomTeam(models.Model):
name = models.CharField(
max_length=30,
default="None"
)
company = models.ForeignKey(
CustomCompany,
on_delete=models.CASCADE,
)
class CustomUser(AbstractUser):
def _limit_function():
return {"company__id":1}
phone = models.CharField(
max_length=20,
blank=True
)
company = models.ForeignKey(
CustomCompany,
on_delete=models.CASCADE,
default=1
)
team = models.ForeignKey(
CustomTeam,
on_delete=models.CASCADE,
default=1,
limit_choices_to = _limit_function()
)
因此,我需要根據所選公司限制團隊價值的變化。 請幫助了解如何執行此操作。
我認為這是您無法在models.py中執行的操作。該表單在客戶端瀏覽器中呈現,該瀏覽器在數據輸入期間無法訪問您的models.py文件,除非您在輸入數據時多次單擊提交。 最好的方法是,用事件偵聽器編寫一個小的Java Script函數(類似:teamfield.addEventListener(“ keydown ...,on key code == 113)),該函數監視表單字段並根據選擇對象進行更改在所選公司上。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.