У меня есть несколько Customer
, которые заказывают Appointment
s. Каждый Appointment
имеет ровно одного клиента, хотя клиент может быть забронирован для нескольких встреч, происходящих в разное время.
class Customer(model.Model):
def __unicode__(self):
return u'%s' % (self.name,)
name = models.CharField(max_length=30)
# and about ten other fields I'd like to see from the admin view.
class Appointment(models.Model):
datetime = models.DateTimeField()
customer = models.ForeignKey("Customer")
class Meta:
ordering = ('datetime',)
Теперь, когда администратор просматривает расписание, просматривая назначения (упорядоченные по времени) в администраторе, иногда они хотят видеть информацию о клиенте, у которого определенная встреча. Прямо сейчас, им нужно будет запомнить имя клиента, перейти от страницы назначения к странице администрирования клиента, найти запомненного Клиента и только затем просмотреть их информацию.
В идеале что-то вроде встроенного админа было бы здорово. Тем не менее, я могу только представить CustomerInline
на странице администратора Appointment
, если Customer
имеет ForeignKey("Appointment")
. (Django специально дает мне ошибку, говоря, что Customer
не имеет ForeignKey для Appointment
). Кто-нибудь знает о подобной функциональности, но когда Appointment
имеет ForeignKey('Customer')
?
Примечание. Я упростил модели; фактическое поле Customer в настоящее время имеет около ~ 10 полей, кроме имени (некоторый свободный текст), поэтому было бы нецелесообразно помещать всю информацию в __unicode__
.