django 使用技巧

教程

django3.2教程
django3.2 queryset

配置首页(根路由)

# 创建coolhome app
# 在project 配置目录(settings.py 所在目录)的urls.py 导入 coolhome/views 的 home()
# 
from coolhome.views import home

urlpatterns = [
    path('', home),
    path('home', home),
    path('admin/', admin.site.urls),
    path('mgt/', include('coolbase.urls')),
    path('mtbf/', include('coolmtbf.urls')),
]

聚合查询

在QuerySet的聚合查询中经常用到aggregate()和annotate()函数,两者区别:
aggregate()是用于属于QuerySet整个对象的汇总值
annotate()函数可以为QuerySet中的每个对象生成一个独立的摘要,输出的结果仍然是一个QuerySet对象,能够调用filter()、order_by()甚至annotate()

多个或条件查询

    q_cmd = None
    for k, v in query_dict.items():
        q_cmd_tmp = (k, v)
        print(q_cmd_tmp)
        if q_cmd is None:
            q_cmd = Q(q_cmd_tmp)
        else:
            q_cmd = q_cmd | Q(q_cmd_tmp)
    print(q_cmd)
    id_set = Sim.objects.filter(q_cmd)

你可能感兴趣的:(后台开发,android,windows,django)