1. 程式人生 > >Django 自定義 admin

Django 自定義 admin

from mark meta list rbo 返回 反向 ins alt

為 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的話

技術分享

Django 自定義 admin