Уведомления

Группа в Telegram: @pythonsu
  • Начало
  • » Django
  • » Посчитать количество повторяющихся лицевых счетов и вывести все в таблицу. [RSS Feed]

#1 Янв. 28, 2013 19:49:15

Jeck290
От:
Зарегистрирован: 2010-01-03
Сообщения: 99
Репутация: +  0  -
Профиль   Отправить e-mail  

Посчитать количество повторяющихся лицевых счетов и вывести все в таблицу.

Имеем модель

class NewTicket(models.Model):
    Operator = models.CharField(max_length=50,verbose_name='Оператор')
    DateW = models.DateTimeField(auto_now_add=True,blank=True,verbose_name='Дата создания')
    Lic = models.IntegerField(max_length=5,verbose_name='Лицевой счет',blank=True)
    Adress = models.CharField(max_length=50,verbose_name='Адрес')
    Telefon = models.CharField(max_length=20,verbose_name='Телефон',blank=True)
    Problem = models.CharField(max_length=200,verbose_name='Описание проблемы')
    Arhiwes = models.BooleanField(default=False)

Представление

def Showtable(request):
    Zaiavki = NewTicket.objects.filter(Arhiwes__icontains=0).order_by('-DateW') // Главная таблица
    Colish = NewTicket.objects.filter(Arhiwes__icontains=0).__len__()
    Countec = NewTicket.objects.values('Lic').annotate(count=Count('id')).filter(Arhiwes=True)//Таблица повторяющихся лицевых счетов
    return direct_to_template(request,'1maintable.html',{'Zaiavki':Zaiavki,'Colish':Colish,'Countec':Countec})

Отрендереная таблица

http://clip2net.com/s/2LwhV

В таблице есть архивные заявки и не архивные, таблица выше это не архивные заявки , в поле повтор нужно вывести количество повторений Лицевого счета из архивных заявок (Arhiwes=True) в итоге имеем два кверисета один НЕ архивная таблица Zaiavki а вторая это выборка повторений по лицевым счетам Countec

пробовал в виюшке написать вот так

{% for opera in Zaiavki %}
            <tr>
                <td>{{ opera.Operator }}</td>
                <td ALIGN="center">{{ opera.DateW|date:"j D b" }}</td>
                <td ALIGN="center">{{ opera.DateW|date:"f" }}</td>
                <td ALIGN="center">{{ opera.Lic }}</td>
                <td ALIGN="center">{{ opera.Adress }}</td>
                <td ALIGN="center">{{ opera.Telefon }}</td>
                <td ALIGN="right">{{ opera.Problem }}</td>
                {% for inside in Countec %}
                    {% if opera.Lic == inside.Lic %}
                        <td>{{ inside.count }}</td>
                    {% else %}
                        <td>0</td>
                    {% endif %}
                {% endfor %}

но получается что цикл нельзя остановить http://clip2net.com/s/2LwqX с таблицей получается вот такая беда.
Помогите как быть в этой ситуации , может соеденить два кверисета ??? подскажите



Отредактировано Jeck290 (Янв. 28, 2013 19:50:23)

Офлайн

  • Начало
  • » Django
  • » Посчитать количество повторяющихся лицевых счетов и вывести все в таблицу.[RSS Feed]

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version