python3.4下django集成使用xadmin后台的方法

yipeiwu_com6年前Python基础

环境:window7 x64、python3.4、django1.10

一、pip install xadmin安装报错

1、使用pip install xadmin命令安装可能报如下错误:

2、解决方案

亲测使用

pip install git+git://github.com/sshwsfc/xadmin.git

命令可以正常使用。

二、django项目中配置xadmin

settings.py配置

INSTALLED_APPS = [

  'django.contrib.admin',

  'django.contrib.auth',

  'django.contrib.contenttypes',

  'django.contrib.sessions',

  'django.contrib.messages',

  'django.contrib.staticfiles',

  'app.apps.AppConfig',

  'xadmin',

  'crispy_forms',

] 

urls.py配置

urlpatterns = [

  # url(r'^admin/', admin.site.urls),

  url(r'^xadmin/', xadmin.site.urls),

] 

在blog/目录下创建adminx.py,增加如下内容:

from .models import Permission,Article,Category, ArticleComment, Type, Notice,EmailVerifyRecord

import xadmin

import xadmin.views as xviews

 

class BaseSetting(object):

  enable_themes = True

  use_bootswatch = True

xadmin.site.register(xviews.BaseAdminView, BaseSetting)

 

class AdminSettings(object):

  # 设置base_site.html的Title

  site_title = '管理后台'

  # 设置base_site.html的Footer

  site_footer = '2017 Admin'

  menu_style = 'default'

 

  # 菜单设置

  def get_site_menu(self):

    return (

      {'title': '文章管理', 'perm': self.get_model_perm(Article, 'change'), 'menus': (

        {'title': '文章', 'icon': 'fa fa-vimeo-square'

          , 'url': self.get_model_url(Article, 'changelist')},

        {'title': '考试类别', 'icon': 'fa fa-vimeo-square'

          , 'url': self.get_model_url(Category, 'changelist')},

        {'title': '文章类别', 'icon': 'fa fa-vimeo-square'

          , 'url': self.get_model_url(Type, 'changelist')},

        {'title': '文章评论', 'icon': 'fa fa-vimeo-square'

          , 'url': self.get_model_url(ArticleComment, 'changelist')},

      )},

    )

xadmin.site.register(xviews.CommAdminView, AdminSettings) 

注意配置完了之后别忘了运行: python3 manage.py makemigrations、python3 manage.py migrate

至此,基本配置完成,可以访问http://localhost:8000/xadmin正常使用了。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python模块之time模块(实例讲解)

python模块之time模块(实例讲解)

time 表示时间的三种形式 时间戳(timestamp) :通常来说,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量。我们运行“type(time.time()...

Python 比较文本相似性的方法(difflib,Levenshtein)

最近工作需要用到序列匹配,检测相似性,不过有点复杂的是输入长度是不固定的,举例为: input_and_output = [1, 2, '你好', 世界', 12.34, 45.6,...

Python大数据之使用lxml库解析html网页文件示例

Python大数据之使用lxml库解析html网页文件示例

本文实例讲述了Python大数据之使用lxml库解析html网页文件。分享给大家供大家参考,具体如下: lxml是Python的一个html/xml解析并建立dom的库,lxml的特点是...

pytorch使用指定GPU训练的实例

本文适合多GPU的机器,并且每个用户需要单独使用GPU训练。 虽然pytorch提供了指定gpu的几种方式,但是使用不当的话会遇到out of memory的问题,主要是因为pytorc...

Django连接数据库并实现读写分离过程解析

这篇文章主要介绍了Django连接数据库并实现读写分离过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 前言 当一个项目当中有大...