Список Django на основе предыдущего списка
Я пытаюсь создать динамический список вариантов. То есть, выбор меняется в зависимости от предыдущего ответа. Например, если country = ["USA", "Canada", "Mexico"]
, то при нажатии кнопки "США" будет создан список с 50 штатами США, state = ["Alabama", "Alaska"]
. Я пытался сделать оператор if, однако, похоже, это не сработало. Я не уверен, какой вариант лучше всего подходит для этого.
class Property(models.Model):
address = CharField(max_length = 200)
city = CharField(max_length = 200)
COUNTRY_LIST = [
("USA", "United States"),
("CAN", "Canada")
]
country = CharField(max_length = 3, choices = COUNTRY_LIST)
USA_STATE_LIST = [
("AL", "Alabama"),
("AK", "Alaska"),
("AZ", "Arizona")
]
CAN_STATE_LIST = [
("AL", "Alberta"),
("BC", "British Columbia")
]
state = CharField(max_length = 2, choices = ?)
Думаю, нам, возможно, придется пересмотреть вашу модель.
state
class State(models.Model)
name = models.CharField(max_length=100)
country
class Country(models.Model)
name = models.CharField(max_length=100)
и использовать это в модели свойств
class Property(models.Model):
address = CharField(max_length = 200)
city = CharField(max_length = 200)
country = models.ForeignKey(Country,on_delete=Bla)
state = models.ForeignKey(State,on_delete=Bla)