18、Django自定义页面跳转链接

  • model.py

# 空内容model
class Feedback_Stat(models.Model):
    pass
  • admin.py

# 重写了modeladmin负责默认页面渲染行为的changelist_view函数实现了对自定义页面的渲染:

from django.contrib import admin
from django.shortcuts import render
from models import Feedback, Feedback_Stat
from views import feedback_stats


@admin.register(Feedback_Stat)
class FeedbackStatsAdmin(admin.ModelAdmin):
    def changelist_view(self, request, extra_content=None):
        return feedback_stats(request)

# 由于重写了其 changelist_view 方法,其将会跳转到用户自定义的 feedback_stats 页面


  • 或者

 class MyAdminSite(admin.AdminSite):
     def get_app_list(self,request):
         app_list = super().get_app_list(request)
         app_list + = [
             {
            " name""我的自定义应用程序"
            " app_label"" my_test_app"
" app_url""/admin/test_view"
            " models":[
                     {
                    " name"" tcptraceroute"
                     " object_name"" tcptraceroute"
                    " admin_url"" /admin/test_view"
                    " view_only"True
                    } 
               ],
            } 
        ] 
         return app_list 

Last updated