Имя пользователя не отображается правильно - PullRequest
0 голосов
/ 04 марта 2010

У меня есть поле для addedBy в одном из моих классов. Я настроил счетчик для этого поля, как показано ниже:

user_count = Issues.objects.values('addedBy').annotate(count=Count('id'))

Тогда в моем шаблоне я обращаюсь к переменной как

{% if user_count %}
   <div class="menutitle"><strong>{% trans "Added By" %}</strong></div>
       {% for item in user_count %}
        <ul>
          <li><a href="#">{{ item.addedBy }} ({{ item.count }})</a> </li>
        </ul>
        {% endfor %}
{% endif %}

Но все, что я получаю, это идентификатор пользователя, а не имя пользователя, как предполагалось.

РЕДАКТИРОВАТЬ: Issues Модель

class Issues(models.Model):
   ISSUE_CHOICES = (
    ('Mechanical', 'Mechanical'),
    ('Dent', 'Dent'),
    ('Interior', 'Interior'),
    ('Body', 'Body'),
    ('Part', 'Part'),
    ('Other', 'Other'),
   )
   ISSUE_STATUS_CHOICES = (
    ('In Progress', 'In Progress'),
    ('Completed', 'Completed'),
    ('Pending', 'Pending'),
   )

   vehicle = models.ForeignKey(Vehicle)
   description = models.CharField('Issue Description', max_length=30,)
   type = models.CharField(max_length=10, default='Other', choices=ISSUE_CHOICES)
   status = models.CharField(max_length=12, default='Pending', 
     choices=ISSUE_STATUS_CHOICES)
   priority = models.IntegerField(default='8', editable=False)
   addedBy = models.ForeignKey(User, related_name='added_by', editable=False)
   assignedTo = models.ForeignKey(User, related_name='assigned_by', blank=True,
    null=True)
   dateTimeAdded = models.DateTimeField('Added On', default=datetime.today,
    editable=False)
   last_updated = models.DateTimeField(default=datetime.today, 
    editable=False)
   def __unicode__(self):    
      return self.description
   def save(self):
     self.last_updated = datetime.now()
     super(Issues, self).save()

1 Ответ

2 голосов
/ 04 марта 2010

Попробуйте изменить назначение user_count на:

user_count = Issues.objects.values('addedBy__username').annotate(count=Count('id'))

и в вашем шаблоне:

<li><a href="#">{{ item.addedBy__username }} ({{ item.count }})</a> </li>

У меня раньше была похожая проблема, и это решило ее.

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