av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術(shù)文章
文章詳情頁

django美化后臺django-suit的安裝配置操作

瀏覽:232日期:2024-09-26 16:46:18

環(huán)境:python2.7+django1.9

1、先下載django-suti

pip install django-suit

2、配置項目

打開setting.py,然后找到------------------------INSTALLED_APPS

在’django.contrib.admin’,前面寫入 ’suit’,

INSTALLED_APPS = [ ’suit’, ’django.contrib.admin’, ’django.contrib.auth’, ’django.contrib.contenttypes’, ’django.contrib.sessions’, ’django.contrib.messages’, ’django.contrib.staticfiles’,]

修改語言、地區(qū)、時間格式:

LANGUAGE_CODE = ’zh-Hans’TIME_ZONE = ’Asia/Shanghai’DATETIME_FORMAT = ’Y-m-d H:i:s’ DATE_FORMAT = ’Y-m-d’

補(bǔ)充知識:利用django-suit模板在管理后臺添加自定義的菜單和自定義的頁面、設(shè)置訪問權(quán)限

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

# django-suit configSUIT_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是默認(rèn)原先的app和models # ’sites’, ’-’, {’app’: ’auth’, ’label’: u’權(quán)限管理’, ’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這種絕對路徑的話,菜單不會展開,且不會標(biāo)記為active狀態(tài) {’url’: ’/admin/theme/mysql’, ’label’: u’第三數(shù)據(jù)’, ’icon’: ’icon-lock’}, ’-’, {’label’: u’統(tǒng)計數(shù)據(jù)’, ’icon’: ’icon-tags’, ’models’: ( {’url’: ’/admin/theme/data’, ’label’: u’第一數(shù)據(jù)’}, {’url’: ’/admin/theme/show’, ’label’: u’第二數(shù)據(jù)’} )} )}

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

from dtheme import viewsurlpatterns = [ # 第一個就是我們自己新增的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,還有左邊的菜單什么的都沒有了,相當(dāng)于誰也不繼承。內(nèi)容就寫在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)還是可以直接訪問到這個頁面,輸入管理后臺的其他頁面它就會要求你驗證。所以說我們自定義的這個頁面還是十分危險的,其他人知道網(wǎng)址后就可以直接訪問它了,我們的想法其實也很簡單啊,我們也不想搞特殊,在安全這方面,只要求和其他后臺的頁面一樣就行了:即用戶在訪問這些后臺頁面的時候要做一個用戶驗證,如果用戶已經(jīng)登錄了,就可以訪問,沒登錄沒通過驗證的話,就不能訪問,直接跳轉(zhuǎn)到登錄頁面。這個需要我們再view里面做設(shè)置。

from django.contrib.admin.views.decorators import staff_member_requireddef data(request): return render(request, 'data.html')data = staff_member_required(data)

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

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

以上這篇django美化后臺django-suit的安裝配置操作就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Django
相關(guān)文章:
主站蜘蛛池模板: 四虎影院新网址 | 中文字幕亚洲专区 | 日本久久一区 | 一区二区在线不卡 | 伊人网站 | 九九九久久国产免费 | 国产精品免费一区二区三区 | 日本人做爰大片免费观看一老师 | 一区二区不卡视频 | 中文字幕在线观看第一页 | 成人精品久久久 | 天天干狠狠操 | 99精品国产在热久久 | 国产精品视频在线观看 | 一区二区免费视频 | 精品一区二区在线观看 | 99久久婷婷国产综合精品电影 | 在线国产小视频 | 91亚洲精品在线观看 | 日韩国产中文字幕 | 免费一区| 午夜电影网 | 欧美日韩国产一区二区三区 | 福利视频一区 | 久久久精品一区 | 91精品国产一二三 | 亚洲精品国产综合区久久久久久久 | 国产精品99久 | 成人免费看片 | 九九热在线视频观看这里只有精品 | 亚洲高清一区二区三区 | 亚洲第一在线 | 久久99精品国产麻豆婷婷 | 黄色成人av | 亚洲导航深夜福利涩涩屋 | 欧美一区二不卡视频 | 爱草在线| 不卡视频在线 | 天天操一操 | av在线免费观看网址 | 最近日韩中文字幕 |