Django админ сайта автозаполнения поля со списком на основе ввода - PullRequest
3 голосов
/ 13 марта 2010

привет, я должен следовать модели Класс Match (models.Model):

    Team_one = models.ForeignKey('Team', related_name='Team_one') 
    Team_two = models.ForeignKey('Team', related_name='Team_two') 
    Stadium = models.CharField(max_length=255, blank=True)
    Start_time = models.DateTimeField(auto_now_add=False, auto_now=False, blank=True, null=True)
    Rafree = models.CharField(max_length=255, blank=True)
    Judge = models.CharField(max_length=255, blank=True)
    Winner = models.ForeignKey('Team', related_name='winner', blank=True)    
    updated = models.DateTimeField('update date', auto_now=True )
    created = models.DateTimeField('creation date', auto_now_add=True )
    def save(self, force_insert=False, force_update=False):
      pass

   @models.permalink
   def get_absolute_url(self):
       return ('view_or_url_name')
class MatchAdmin(admin.ModelAdmin):
   list_display = ('Team_one','Team_two', 'Winner')
   search_fields = ['Team_one','Team_tow']

 admin.site.register(Match, MatchAdmin)

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

Ответы [ 2 ]

1 голос
/ 13 марта 2010

Нет простого способа сделать это с администратором django. Это возможно, но для этого потребуется заменить форму администратора и создать подкласс виджета с помощью некоторого JavaScript, который копирует команду в поле. Намного больше усилий, чем стоит.

На вашем месте я бы просто имел поля winner_team и loser_team

также читайте это: http://www.python.org/dev/peps/pep-0008/

0 голосов
/ 13 марта 2010

Вам нужно django-smart-selects .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...