Django Suit v2-dev 使用

时间:2024-01-16 12:35:26

转:链接:https://www.jianshu.com/p/84fa8219fb48

官方文档: 链接

Git: 链接

install

Django Suit 为了适配 Django 有许多不同的版本,导致它们的安装方式也有差异。所以安装之前一定要分清版本。

使用 pip list 查看Django 版本。

所以我采用的是 Django Suit v2-dev, 这个分支的官方文档
下载,pip install https://github.com/darklow/django-suit/tarball/v2
修改 my_project_app/apps.py

from suit.apps import DjangoSuitConfig
# layout这个参数决定你的网页是初始样式是垂直样式还是水平样式,可选参数为‘horizontal’或‘vertical’
class SuitConfig(DjangoSuitConfig):
layout = 'horizontal'

添加应用,注意一定要把应用放到django.contrib.admin 前面。

INSTALLED_APPS = (
...
'my_project_app.apps.SuitConfig',
'django.contrib.admin',
)

配置

可以把 代码 贴到 your_application/apps.py 中的对应位置,体验一下 Django suit 的配置。

class SuitConfig(DjangoSuitConfig):
# 布局,垂直'vertical'还是水平'horizontal'
layout = 'vertical'
# 配置菜单栏
menu = (
# ParentItem 是一级标题栏。第一个参数是标题名,children 是list形式,里面放置了二级菜单。还可以传不定参数 icon,这是图标。
# ChildItem 是二级菜单栏,第一个参数是标题名。不定参数 url=(这个任务具体的函数),icon。
ParentItem('Content', children=[
ChildItem(model='demo.country'),
ChildItem(model='demo.continent'),
ChildItem(model='demo.showcase'),
ChildItem('Custom view', url='/admin/custom/'),
], icon='fa fa-leaf'),
ParentItem('Integrations', children=[
ChildItem(model='demo.city'),
]),
ParentItem('用户管理', children=[
ChildItem(model='auth.user'),
ChildItem('User groups', 'auth.group'),
], icon='fa fa-users'),
ParentItem('账号安全', children=[
ChildItem('Password change', url='admin:password_change'),
ChildItem('Open Google', url='http://google.com', target_blank=True), ], align_right=True, icon='fa fa-cog'),
) def ready(self):
super(SuitConfig, self).ready() # DO NOT COPY FOLLOWING LINE
# It is only to prevent updating last_login in DB for demo app
self.prevent_user_last_login() def prevent_user_last_login(self):
"""
Disconnect last login signal
"""
from django.contrib.auth import user_logged_in
from django.contrib.auth.models import update_last_login
user_logged_in.disconnect(update_last_login)