Как сделать foreignKey из одной и той же таблицы в django?
Как сделать foreign-key из одной таблицы в админке Django?
Например, у меня есть данные о людях с именем и фамилией:
- Джо Ни
- Джо Ри
- Боб Гх
и у меня есть модель Person:
class Person(models.Model):
name = models.CharField(max_length=25)
lname = models.CharField(max_length=25, blank=False)
def __str__(self):
return str(self.name)
class MyModel(models.Model):
first_name = models.ForeignKey(Person, on_delete=models.CASCADE)
last_name = models.ForeignKey(Person, on_delete=models.CASCADE)
Теперь я хочу выбрать, например, значение 'Joe' в "MyModel", и тогда он покажет мне все другие допустимые варианты для этого имени: NI, RI
Как я могу это сделать?
TNX ребята
Чтобы правильно отобразить описанное отношение между именем и фамилией, я бы предложил что-то вроде этого.
class FirstName(models.Model):
value = CharField(max_length=25)
class LastName(models.Model):
first_name = models.ForeignKey(FirstName, on_delete=models.CASCADE)
value = CharField(max_length=25)
Вы используете JavaScript в своей форме, чтобы убедиться, что список доступных фамилий для данного имени динамически обновляется.