Как выразить отношение "один ко многим" в Django

Я определяю свои модели Django прямо сейчас, и я понял, что не было OneToManyField в типах полей модели. Я уверен, что есть способ сделать это, поэтому я не уверен, что мне не хватает. По сути, у меня есть что-то вроде этого:

class Dude(models.Model):
    numbers = models.OneToManyField('PhoneNumber')

class PhoneNumber(models.Model):
    number = models.CharField()

В этом случае каждый Dude может иметь несколько PhoneNumber s, но связь должна быть однонаправленной, и мне не нужно знать из PhoneNumber , который Dude как таковой владеет, так как у меня может быть много разных объектов, которым принадлежат экземпляры PhoneNumber , например Business ] например:

class Business(models.Model):
    numbers = models.OneToManyField('PhoneNumber')

Чем бы я заменил OneToManyField (который не существует) в модели для представления такого рода отношений? Я приехал из Hibernate / JPA, где объявить отношение «один ко многим» было так же просто, как:

@OneToMany
private List<PhoneNumber> phoneNumbers;

Как я могу выразить это в Django?

150
задан Naftuli Kay 3 August 2011 в 15:07
поделиться