django admin源码解读(笔记)

本文详细解读了Django的Admin模块源码,探讨了其工作流程和关键实现细节,帮助开发者更好地理解和定制admin功能。
摘要由CSDN通过智能技术生成

流程
django admin 渲染视图流程
部分笔记

{% extends "admin/base_site.html" %}
{% load i18n admin_urls ralph_tags admin_static admin_list foundation_alert sitetree cache %}

<!--@@@继承base_site.html -> block extrastyle-->
{% block extrastyle %}
  {
   { block.super }}
  {% if not actions_on_top and not actions_on_bottom %}
    <style>
      #changelist table thead th:first-child {
     width: inherit}
    </style>
  {% endif %}
{% endblock %}

<!--@@@继承父模板 block bodyclass 并且在后面加上几个html class-->
{% block bodyclass %}{
   { block.super }} app-{
   { opts.app_label }} model-{
   { opts.model_name }} change-list{% if bulk_edit %} bulk-edit{% endif %}{% endblock %}

<!--@@@不知道这个block coltype是什么-->
{% block coltype %}flex{% endblock %}

<!--@@@主体内容block-->
{% block content %}
<!--@@@主体内容block-->
  {% if is_popup and cl %}
    {% contextual_search_form search_url search_fields cl.opts.verbose_name  %}
  {% endif %}
  <div id="content-main">
    <form method="get" action="" id="filter-form" class="hide"></form>
    <form id="changelist-form" action="" method="post"{% if cl.formset.is_multipart %} enctype="
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Django中间件是一种可插拔的组件,用于在请求和响应处理过程中进行预处理和后处理操作。它可以对请求进行修改、验证、记录日志等操作,并且可以在视图函数执行前后进行一些额外的处理。 下面是对Django中间件源码的简要解读: 1. 中间件的定义: Django中间件是一个Python类,它实现了一组特定的方法,用于处理请求和响应。通常,一个中间件类至少需要实现`__init__`和`__call__`方法。 2. 中间件的执行顺序: Django中间件的执行顺序是按照在`MIDDLEWARE`设置中定义的顺序进行的。每个中间件都会依次调用`__call__`方法,处理请求或响应。 3. 请求阶段的中间件方法: - `process_request(request)`:在视图函数执行前被调用,可以对请求进行修改或验证。 - `process_view(request, view_func, view_args, view_kwargs)`:在视图函数执行前被调用,可以对视图函数进行修改或验证。 - `process_exception(request, exception)`:在视图函数抛出异常时被调用,可以对异常进行处理或记录日志。 4. 响应阶段的中间件方法: - `process_response(request, response)`:在视图函数执行后被调用,可以对响应进行修改或处理。 5. 中间件的激活和配置: 在Django的配置文件中,可以通过`MIDDLEWARE`设置来激活和配置中间件。可以指定中间件类的路径,也可以使用Django提供的默认中间件。 以上是对Django中间件源码的简要解读,如果你对某个具体的中间件或方法有更详细的问题,请告诉我。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值