zoukankan      html  css  js  c++  java
  • Django 自定义 admin

    为 model 自定义显示

     label是这个Field如果在form中的话会显示的、而verbose_name在form中不会显示、只是作为一种说明而已

    callable()   -->  是否可以被调用,来判断是否是函数

       - 也可以通过  

    from types import FunctionType
    isinstance(item, FunctionType)
    来解决

    取函数名 __name__

     from django.utils.safestring import mark_safe

    告诉浏览器,代码安全,刻意渲染

    templatetags


    from django.template.library import Library

    register = Library()

    @register.simple_tag
    def show_result_list():
    pass

    {% load result_list %}


    @register.inclusion_tag('模板路径')
    def show_result_list():
    return 数值 --> 发送给模板,然后模板在渲染后返回

    参数通过类的方式传入调用

    self.model_class._meta.app_label                          通过 表的类,来调用它的 app 名字
    self.model_class._meta.model_name                          通过 表的类,来调用它的 表 名字
    self.model_class._meta.get_field                     通过 表的类,来调用它的字段
    self.model_class._meta.get_field(字段名).verbose_name                这个是上面的例子,字段实际上就是一个对象是吧 CharField(。。。)

    反向生成 url

    使用模块

    from django.urls import reverse
    

      

    后端使用

    正常 url

     非命名正则使用取值

     

    正则命名使用取值

     模板中使用反向生成url

    在模拟admin中的时候,因为使用了namespace,所以需要加上namespace

     

     如果有多层namespace的话

  • 相关阅读:
    spring之为java.util.Properties类型的属性进行赋值
    spring之为级联集合属性进行赋值
    spring之级联属性赋值的两种方式
    打造最佳开发团队的几点建议
    软件开发中的11个系统思维定律
    走向“持续部署”
    关于“兴趣爱好”之我见
    技术人员应真正学会的第二课程
    Java语言的动态性支持
    Java深度历险(九)——Java安全
  • 原文地址:https://www.cnblogs.com/alwaysInMe/p/7694744.html
Copyright © 2011-2022 走看看