2013-02-23 1 views
2

В (игрушечной версии) моего проекта есть Владельцы, у которых есть любое количество объектов. Мой models.py файл выглядитDjango admin site - list ForeignKey items as change-list на странице изменений

class Owner(models.Model) 
    name = models.CharField(max_length=50) 
    date_of_birth = models.DateField() 

class Object(models.Model) 
    name = models.CharField(max_length=50) 
    price = models.models.DecimalField(max_digits=9, decimal_places=2) 
    owner = models.ForeignKey(Owner) 

Моим вопрос относится к странице изменений для владельца на сайте администратора, например,

http://mysite.com/admin/myapp/owner/1/. 

Теперь я знаю, что если я зарегистрировать Object как TabularInline или StackedInline, то я получаю редактируемый список объектов этого Владелец владеет. Однако в реальной версии моего проекта Object имеет что-то вроде 25 полей, а не 2, поэтому ни один из этих вариантов не является действительно желательным эстетически.

На самом деле мне бы хотелось, чтобы у меня был список изменений всех объектов, которые Владелец владеет на странице смены владельца. (Таким образом, я получаю хороший компактный список всех объектов Владельца, и если мне нужно отредактировать детали одного, я могу щелкнуть по его ссылке и отредактировать его на своей собственной странице.) В основном я хочу, чтобы содержимое

http://mysite.com/admin/myapp/object/?owner__id__exact=1 

появляться в

http://mysite.com/admin/myapp/owner/1/. 

есть ли способ сделать это?

PS: Я использую Django 1.4 и Python 2.7.

ответ

0

Вы можете определить, какой класс формы и/или поля использовать в каждом InlineModelAdmin, используя these attributes, и ограничить количество полей ввода для каждого объекта таким образом.

Смежные вопросы