У меня есть следующие модели в Django, и с помощью смарт-выбирает:Как ограничить ForeignKey поля в другую модели FK в зависимости от значения
class Country(models.Model):
name = models.CharField(max_length=100)
class Province(models.Model):
name = models.CharField(max_length=100)
country = models.ForeignKey(Country)
class City(models.Model):
name = models.CharField(max_length=100)
country = models.ForeignKey(Country)
province = models.ForeignKey(Province)
В светильниках, я добавил несколько стран, со своими провинциями, и города.
Я использую smart-selects для построения цепочки в этой модели
class WorkArea(models.Model):
work_area = models.CharField(max_length=100)
country = models.ForeignKey(Country)
province = ChainedForeignKey(Province, chained_field="country",chained_model_field="country")
city = ChainedForeignKey(City, chained_field=province", chained_model_field="province")
Теперь у меня есть эта модель:
class Project(models.Model):
project_name = models.CharField(max_length=100)
province = models.ForeignKey(Province)
Вопрос: В модели Project
как я показывать только провинции образуют Province
модель , который имеет country
установлен на X (Если у меня есть страны «США» и «Канада», я хочу поле province
, чтобы показать список провинций в «США» только с выбранной страной выбора).
Я полагаю, вы хотите, чтобы с Javascript, так что, когда пользователь выбирает одну страну, всю провинцию этой страны автоматически в списке? – Ramast
Нет, в модели 'Project' на поле' province' я хочу, чтобы он показывал только список провинций США. как вы можете видеть в модели «WorkArea», я уже реализовал плагин smart-selects, и он отлично работает. моя проблема в модели «Проект», что я не хочу, чтобы пользователь выбирал страну, она должна быть предварительно выбрана как «США» или pk = x, поэтому в этой модели не будет поля «страна» , –
Я раньше не использовал этот пакет, спасибо за обмен. У меня есть upvoted и посмотрел на ваш вопрос, надеюсь, кто-то другой может помочь – Ramast