首页 > 解决方案 > 在 DJANGO 的框中为同一子类别创建两个用户

问题描述

我有 4 个用户(2 X CP_USER,2 X CP_SCRNS)和两个子组(登录统计信息和应用程序统计信息),但其中两个属于一个组,另外 2 个属于另一个组。

这是屏幕截图。

数据库

如何将两组分开并显示在同一个框中的 html 页面中。这是参考这里是索引页面应该是什么样子的参考。 .

这是我的模型页面: from django.db import models from datetime import datetime

在此处创建您的模型。

class Kpi_Data(models.Model):
kpi_key = models.CharField(max_length=200,default="")
kpi_date = models.DateField(blank=True,null=True)
kpi_value = models.CharField(max_length=200,default="")
kpi_Group = models.CharField(max_length=200,default="")
kpi_subgroup = models.CharField(max_length=200,default="")
kpi_delta_ind = models.CharField(max_length=200,default="")

这是我的views.py文件

from django.shortcuts import render from django.http import HttpResponse from .models import Kpi_Data from django.template import loader

在此处创建您的视图。

def home(request):
return render(request,"myApp/index.html")


def info(request):
ac = Kpi_Data.objects.all()
template = loader.get_template('myApp/info.html')
Context = {
    'ac': ac,
}
return HttpResponse(template.render(Context, request))

这是我的 info.html 页面。

 <!DOCTYPE html>
     <html lang="en" xmlns="http://www.w3.org/1999/html">
     <head>
     <meta charset="utf-8">
     <style>
       </style>
      </head>


     <nav class="navbar navbar-expand-xl navbar-dark bg-dark">
   <a href="#" class="navbar-brand" style="font-size: 150%"></a>
    <div class = "logo"></div>
  <a href="#"><img src= "" width="190" height="70" alt=""></a>
        </div>
enter code here

    <!-- Collection of nav links, forms, and other content for toggling -->
        <div class="input-group search-box">
            <input type="text" id="search" class="form-control" 
  placeholder="Search here...">
        </div>
    </form>
            <div class="navbar-nav ml-auto">
        <a href="#" class="nav-item nav-link active"><i1 class="fa fa- 
     home"></i1></a>
        <div class="nav-item dropdown">
            <a href="#" data-toggle="dropdown" class="nav-item nav-link 
    dropdown-toggle user-action active">{{ request.headers.uid }}
    </br>{{ request.headers.role}}</a>
            <div class="dropdown-menu">
                <a href="#" class="dropdown-item"><i class="fa fa-user-o"> 
       </i> Profile</a>
                <a href="#" class="dropdown-item"><i class="fa fa-calendar- 
   o"></i> Calendar</a>
                <a href="#" class="dropdown-item"><i class="fa fa-sliders"> 
   </i> Settings</a>
                <div class="divider dropdown-divider"></div>
                <a href="#" class="dropdown-item"><i class="material- 
  icons">&#xE8AC;</i> Logout</a>
            </div>
        </div>
    </div>

   </nav>
     <body>

              <div class="sidebar">
                          <a class = "nav-item nav-link" href="#">Home</a>
                <a href="#">Reference Data</a>
     `enter code here`            <a  href="#">Report Registration</a>
                 <a href="#">Role Management</a>
                 <a  href="#">Role maintenence</a>
                 <a href="#">User Roles</a>
                 <a href="#">User Management</a>

            </br>
            </div>
    <h1>Login statistics</h1>
    <h2>Appication statictics</h2>

  <div class="footer fixed-bottom">
                <a href="#">@ Copyright Maryland.gov</a>
                <a href="#">All rights Reserved</a>
                 <a  href="#">Contatc us</a>
                 <a href="#">Privacy & Security</a>
                 <a  href="#">Accessbility</a>
            </div>

         </body>
            </html>

   Thanks in advance.

标签: django

解决方案


我看到了你的代码。

rows = Kpi_Data.objects.objects.values('kpi_group', 'kpi_subgroup', 
   'kpi_key').annotate(value=sum('kpi_value'))
L_C_U = L_C_S = A_C_U = A_C_S = 0`
for row in rows
  if (row[kpi_Group]=='LOGIN_STATIS' and row[kpi_subgroup]='CONSUMER_PORTAL' and row[kpi_key]='CP_USER'):
     L_C_U = row[value]
  elif (row[kpi_Group]=='LOGIN_STATIS' and row[kpi_subgroup]='CONSUMER_PORTAL' and row[kpi_key]='CP_SCRNS'):
     L_C_S = row[value]
  ....

Context = {
    'LCU': L_C_U,
    'LCS': L_C_S,
     ....
}

然后,在模板文件 info.html 中,使用 LCU、LCS ... 来显示数据。如果上面的代码对您有所帮助,我很高兴。


推荐阅读