最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

利用django-suit模板添加自定義的菜單、頁面及設置訪問權限

 更新時間:2018年07月13日 09:23:49   作者:喂-不吃素的熊寶寶  
這篇文章主要給大家介紹了關于利用django-suit模板添加自定義的菜單、頁面及設置訪問權限的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起看看吧

前言

本文主要給大家介紹了利用django-suit模板在管理后臺添加自定義的菜單和自定義的頁面、設置訪問權限的相關內容,分享出來供大家參考學習,下面話不多說了,來隨著小編一起看看詳細的介紹吧

 方法如下:

1、先在settings.py里面的SUIT_CONFIG中添加配置,我們平時添加的配置都是app類型的,我們需要自定義頁面的話,就不能用app了,需要用url,這里面我們使用如下:

# django-suit config
SUIT_CONFIG = {
 'ADMIN_NAME': 'X·X',
 'HEADER_DATE_FORMAT': '',
 'HEADER_TIME_FORMAT': 'H:i',
 'SHOW_REQUIRED_ASTERISK': True,
 'CONFIRM_UNSAVED_CHANGES': True,
 'LIST_PER_PAGE': 20,
 'MENU_OPEN_FIRST_CHILD': True,
 'MENU': (
  # sites是默認原先的app和models
  # 'sites',
  '-',
  {'app': 'auth', 'label': u'權限管理', 'icon': 'icon-lock'},
  '-',
  {'app': 'duser', 'label': u'平臺用戶', 'icon': 'icon-user'},
  '-',
  {'app': 'dtheme', 'label': u'主題管理', 'icon': 'icon-tags'},
  '-',
  {'app': 'dpost', 'label': u'文章管理', 'icon': 'icon-edit'},
  '-',
  # 如果使用http這種絕對路徑的話,菜單不會展開,且不會標記為active狀態(tài)
  {'url': '/admin/theme/mysql', 'label': u'第三數據', 'icon': 'icon-lock'},
  '-',
  {'label': u'統(tǒng)計數據', 'icon': 'icon-tags', 'models': (
   {'url': '/admin/theme/data', 'label': u'第一數據'},
   {'url': '/admin/theme/show', 'label': u'第二數據'}
  )}
 )
}

2、然后就是在urls.py里面添加路由,這個路由一定要添加在admin.site.urls的前面,因為不然的話,它會先去admin.site.urls里面去匹配,造成混亂或報錯。

from dtheme import views

urlpatterns = [
 # 第一個就是我們自己新增的url路徑
 url(r'^admin/theme/data', views.data),
 url(r'^admin/', admin.site.urls),
 url(r'^api/user/', include('duser.urls')),
 url(r'^api/post/', include('dpost.urls')),
 url(r'^api/theme/', include('dtheme.urls')),
] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

3、然后,就是寫views了,我們假如dtheme模塊的views里面寫:

def data(request):
 return render(request, "data.html")

4、請注意,之所以我們上面可以直接用data.html,是因為我們在dtheme模塊下面創(chuàng)建了一個templates文件夾,然后把data.html放在里面了,它會掃描這個文件夾找模板。那么這個模板寫成什么樣呢?我們就隨意寫了一個東西。這里面需要注意的是,我們需要繼承base_site.html,不然那些header和footer,還有左邊的菜單什么的都沒有了,相當于誰也不繼承。內容就寫在content里面即可。

{% extends "admin/base_site.html" %}

{% block content %}
hello, new page.
{% endblock %}

5、OVER。

6、回來,還沒完。這個時候如果我們從后臺注銷,然后直接在瀏覽器中輸入http://127.0.0.1:8000/admin/theme/data的話,發(fā)現(xiàn)還是可以直接訪問到這個頁面,輸入管理后臺的其他頁面它就會要求你驗證。所以說我們自定義的這個頁面還是十分危險的,其他人知道網址后就可以直接訪問它了,我們的想法其實也很簡單啊,我們也不想搞特殊,在安全這方面,只要求和其他后臺的頁面一樣就行了:即用戶在訪問這些后臺頁面的時候要做一個用戶驗證,如果用戶已經登錄了,就可以訪問,沒登錄沒通過驗證的話,就不能訪問,直接跳轉到登錄頁面。這個需要我們再view里面做設置。

from django.contrib.admin.views.decorators import staff_member_required

def data(request):
 return render(request, "data.html")

data = staff_member_required(data)

看到上面的變化了沒有?就是我們引入了一個staff_member_required模塊,這個模塊就是用來驗證是否是內部人員(也就是是否登錄)用的。當然我們要把我們的view函數放在它里面。這樣就OK了。

7、這里面還有一個如何把自定義頁面加入到auth里面的坑,待研究完再回來補充。

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

相關文章

  • python中列表的常見操作梳理總結(一)

    python中列表的常見操作梳理總結(一)

    這篇文章主要介紹了python中列表的常見操作梳理總結,文章圍繞主題展開詳細的內容介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-07-07
  • Python 實戰(zhàn)開發(fā)校園管理系統(tǒng)詳細流程

    Python 實戰(zhàn)開發(fā)校園管理系統(tǒng)詳細流程

    讀萬卷書不如行萬里路,只學書上的理論是遠遠不夠的,只有在實戰(zhàn)中才能獲得能力的提升,本篇文章手把手帶你用Python開發(fā)一套校園管理系統(tǒng),包含各種人員,如教師、學生等。學校的系統(tǒng)通常還包括一些課程的信息,大家可以在過程中查缺補漏,提升水平
    2021-10-10
  • 使用Python實現(xiàn)分組數據并保存到單獨的文件中

    使用Python實現(xiàn)分組數據并保存到單獨的文件中

    當處理大型數據集時,通常需要將數據分組,并將每個分組的數據保存到單獨的文件中,本文將使用 Python 中的 pandas 庫來實現(xiàn)這一目標,需要的可以參考下
    2024-04-04
  • Python爬蟲之解析HTML頁面詳解

    Python爬蟲之解析HTML頁面詳解

    本文介紹了Python中用于解析HTML頁面的重要工具之一——BeautifulSoup庫,詳細講解了BeautifulSoup庫的基本使用方法、標簽選擇器、CSS選擇器、正則表達式、遍歷文檔樹等內容,并結合實例代碼展示了BeautifulSoup庫的應用場景
    2023-04-04
  • Python多進程multiprocessing用法實例分析

    Python多進程multiprocessing用法實例分析

    這篇文章主要介紹了Python多進程multiprocessing用法,結合實例形式分析了Python多線程的概念以及進程的創(chuàng)建、守護進程、終止、退出進程、進程間消息傳遞等相關操作技巧,需要的朋友可以參考下
    2017-08-08
  • python3.9.1環(huán)境安裝的方法(圖文)

    python3.9.1環(huán)境安裝的方法(圖文)

    這篇文章主要介紹了python3.9.1環(huán)境安裝的方法(圖文),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-02-02
  • Python如何實現(xiàn) HTTP echo 服務器

    Python如何實現(xiàn) HTTP echo 服務器

    本文介紹了如何使用Python實現(xiàn)一個簡單的HTTPecho服務器,該服務器支持GET和POST請求,并返回JSON格式的響應,GET請求返回請求路徑、方法、頭和查詢字符串,POST請求還返回請求體內容,服務器的使用方法和測試示例也一并提供,感興趣的朋友跟隨小編一起看看吧
    2025-01-01
  • Python函數之zip函數的介紹與實際應用

    Python函數之zip函數的介紹與實際應用

    zip() 函數用于將可迭代的對象作為參數,將對象中對應的元素打包成一個個元組,然后返回由這些元組組成的對象(python2 返回的是這些元組組成的列表 ),下面這篇文章主要給大家介紹了關于Python函數之zip函數實際應用的相關資料,需要的朋友可以參考下
    2022-03-03
  • 基于Python實現(xiàn)計算納什均衡的示例詳解

    基于Python實現(xiàn)計算納什均衡的示例詳解

    納什均衡是一種博弈論中的概念,它描述了一種平衡狀態(tài),其中每個參與者都不能通過獨立改變其決策來提高自己的利益。本文就來用Python中的Nashpy和PuLP實現(xiàn)計算納什均衡,感興趣的可以了解一下
    2023-02-02
  • 20個解決日常編程問題的Python代碼分享

    20個解決日常編程問題的Python代碼分享

    在這篇文章中,主要和大家分享了20個Python代碼片段,以幫助你應對日常編程挑戰(zhàn)。文中的示例代碼講解詳細,感興趣的小伙伴可以跟上小編一起了解一下
    2023-01-01

最新評論

江川县| 瑞金市| 靖安县| 辽宁省| 永宁县| 革吉县| 兴和县| 嵊泗县| 盱眙县| 翁源县| 嘉荫县| 泰宁县| 淮阳县| 东兴市| 喀喇| 宿迁市| 嘉鱼县| 县级市| 晴隆县| 精河县| 陕西省| 靖西县| 峨眉山市| 临夏市| 皋兰县| 潼关县| 钦州市| 沧源| 伊吾县| 大新县| 苗栗市| 修文县| 道真| 恩平市| 柯坪县| 邹城市| 左权县| 元阳县| 肥西县| 海原县| 右玉县|