安装完django,该安装xadmin了,我们都知道django有自己的原生后台admin,但这里我们不用admin,我们用xadmin,因为xadmin的界面更加漂亮。

1.xadmin的安装

首先登陆root用户,安装xadmin:

1pip install https://github.com/sshwsfc/xadmin/tarball/master

注意:不能使用pip install xadmin,因为这样安装的xadmin不兼容python3,使用过程中会出现一系列问题,另外安装插件最好是使用root用户,免得出现一系列权限问题。

然后su - pycode,进入到根目录,新建django项目:

1django-admin.py startproject shopping_sites

报错如下:

-bash: django-admin.py: command not found

应该是没有添加环境变量引起的,root下使用如下命令添加:

1vim /etc/profile

在最后面加入如下命令:

1export PATH=$PATH:/usr/local/python3.6.8/lib/python3.6/site-packages/Django-1.11.20-py3.6.egg/django/bin

2source /etc/profile

使用命令echo $PATH查看是否生效。

重新su - pycode,进入到根目录,新建django项目:

1django-admin.py startproject shopping_sites

ls可以看到出现了目录shopping_sites,接下来执行如下命令:

1cd shopping_sites

2cp /usr/local/python3.6.8/lib/python3.6/site-packages/xadmin -r ./

将xadmin复制一份到当前目录下来,方便后期进行个性化修改。

2.将xadmin引入到当前项目首先修改shopping_sites/shopping_sites/settings.py文件,在文件中添加3行,如下:

1INSTALLED_APPS = (

2 ...

3

4 'xadmin',

5 'crispy_forms',

6 'reversion',

7

8 ...

9)还可以修改语言设置:

1LANGUAGE_CODE = 'zh-hans' #支持汉语修改shopping_sites/shopping_sites/urls.py,如下:

1from django.conf.urls import url, include

2#from django.contrib import admin

3from xadmin.plugins import xversion

4import xadmin

5

6xversion.register_models()

7xadmin.autodiscover()

8

9urlpatterns = [

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

11]

3.新建app

执行下列命令:

1python manage.py startapp op_xadmin

成功,可以看到shopping_sites目录下出现了op_xadmin目录。

注意:如果建立app过程中报什么模块找不到,直接pip install XXXX安装即可。

4.数据库安装和使用

我们使用mysql作为数据库,首先要建库:

1mysql -uroot -p123456 #超级用户登录

然后新建数据库并赋权限:

1CREATE DATABASE shopping DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

2grant all on shopping.* to mysql@localhost identified by 'mysql';

使用 show variables like '%character%'; 命令即可看到字符集都已设置为utf8。

接着修改setting.py,如下:

1DATABASES = {

2 'default': {

3 'ENGINE': 'django.db.backends.mysql',

4 'NAME': 'shopping',

5 'USER':'mysql',

6 'PASSWORD':'mysql',

7 'HOST':'',

8 'PORT':'',

9 }

10}

然后执行数据库同步的命令:python manage.py makemigrations,报错:

django.core.exceptions.ImproperlyConfigured: Error loading MySQLdb module: No module named 'MySQLdb'.

看报错信息可以知道是没有安装连接mysql的模块,这里我们使用pymysql,所以pip install pymysql安装。

修改项目目录下__init__.py,加入如下代码:

1import pymysql

2pymysql.install_as_MySQLdb()

重新执行,不再报错,如下:

5.启动django

然后修改op_xadmin目录下admin.py为adminx.py,内容如下:

1from .models import ops

2import xadmin

3

4# Register your models here.

5

6class opsAdmin(object):

7 list_display = ('op_name')

8

9xadmin.site.register(ops, opsAdmin)

然后我们需要在setting.py中加入如下内容:

1ALLOWED_HOSTS = ['192.168.233.250'] #注意要换成自己的linux机器或者虚拟机ip地址

启动服务:

1python manage.py runserver 192.168.233.250:9090

使用命令:python manage.py createsuperuser 创建超级用户。

user:xadmin

email:xadmin@szkingdom.com

passwd:1qaz!QAZ

重新启动服务,登陆:

点击管理员信息表,一直报错,报错信息如下:

1Internal Server Error: /xadmin/op_xadmin/ops/

2Traceback (most recent call last):

3 File "/usr/local/python3.6.8/lib/python3.6/site-packages/Django-1.11.20-py3.6.egg/django/db/models/options.py", line 617, in get_field

4 return self.fields_map[field_name]

5KeyError: 'o'

然后各种查找原因没找到,直接修改了字段名,如下:

1class ops(models.Model):

2 opera_name = models.CharField(max_length=32, unique=True, verbose_name=u"管理员名称")

3 opera_age = models.CharField(max_length=32, default = '23', verbose_name=u"管理员年龄")

4

5 class Meta:

6 db_table = 'ops'

7 verbose_name = '管理员信息表'

8 verbose_name_plural = '管理员信息表'

9

10 def __str__(self):

11 return self.opera_name

更新数据库后,重新启动服务:

可以看到点击管理员信息表不再报错,好了,今天就分享到这里,如果对您有用,可以点个赞,关于xadmin的更多使用,请关注后续文章,谢谢!

xadmin与mysql数据库_django和xadmin打造后台管理系统(一)-xadmin安装及使用相关推荐

  1. xadmin与mysql数据库_django学习之xadmin后台管理部署

    首先看下admin的后台管理界面(默认,未做任何设置) 都说xadmin很吊,吊炸天,我就拿过来撸了一把,发现事实并不是这样的,我只能说一句,最合适自己的才是最好的,还是自己撸吧,偶尔借鉴下还是可以的 ...

  2. Django怎么配置mysql数据库_Django如何配置mysql数据库

    Django项目默认使用sqlite 数据库,但是我想用mysql数据库,应该如何配置呢. Django连接mysql数据库的操作,是通过根模块的配置实现的,在项目根模块的配置文件settings.p ...

  3. django连接mysql数据库_Django学习笔记(4)——Django连接数据库

    前言 在MVC或者MTV设计模式中,模型(M)代表对数据库的操作.那么如何操作数据库呢?本小节就认真学习一下.首先复习一下Django的整个实现流程 ,然后再实现一下使用数据库的整个流程,最后学习一下 ...

  4. django框架访问mysql数据库_Django框架怎么配置mysql数据库

    Django框架怎么配置mysql数据库 发布时间:2020-08-01 10:37:54 来源:亿速云 阅读:67 作者:小猪 这篇文章主要讲解了Django框架怎么配置mysql数据库,内容清晰明 ...

  5. flask对mysql数据库增删改查_flask后台框架1.4(mysql配置+数据库增删改查)-Go语言中文社区...

    mysql配置及问题 前面三份博客的笔记基本记录了所用到的基本操作,这里开始记录后台和数据库的交互,数据库我们用的是mysql然后的话mysql就不记录了因为很简单,要是没有安装学习的话,基本在网上找 ...

  6. 微信小程序后端mysql数据库_微信小程序后台springboot+mybatis+mysql“采坑”集锦

    "采坑"错误集锦 1.service层 错误描述:2019-04-14 22:09:52.027 ERROR 8416 --- [nio-8082-exec-5] o.a.c.c. ...

  7. 基于 jsp+servlet+mysql 开发旅游推介网站和后台管理系统(maven项目)

    你知道的越多,你不知道的越多 点赞再看,养成习惯 如果您有疑问或者见解,或者没有积分想获取项目,欢迎指教: 企鹅:869192208 文章目录 一. 开发背景 二. 需求分析 三.开发环境 四.运行效 ...

  8. xadmin与mysql数据库_十八、Django3.0学习之引入xadmin

    一.将xadmin导入Django工程中 1.1 xadmin下载地址: https://github.com/sshwsfc/xadmin/tree/django2 或者: 链接:https://p ...

  9. xadmin与mysql数据库_Xadmin中的功能及设置

    [Django--Xadmin中的功能](http://blog.csdn.net/lyysr/article/details/48735053) [django使用xadmin的全局配置](http ...

最新文章

  1. Ember.js如何与后端服务交互?adapter、store、ember data关系揭秘
  2. Linux驱动编程 step-by-step (四) 字符设备的注册与设备节点的自动创建
  3. [Conclusion]RabbitMQ-客户端源码之总结
  4. 微型计算机原理中LEA,微型计算机系统原理及应用(第2版)第2章
  5. postgresql两个列模糊比较_数据分析之SQL优化系列(二)---PostgreSQL 的索引
  6. mysql临时关闭查询日志_mysql故障排错临时打开通用日志和慢查询日志
  7. java注解 @SuppressWarnings注解用法
  8. 多个div在一个div中一行水平显示
  9. VB 两种方法建立多级目录
  10. 59. Event 例子
  11. 用文本文档制作bat文件
  12. php唯美博客,24个很酷的PHP开源库
  13. 算法:买卖股票最佳时机(c++)
  14. 高三计算机教学计划,高三上学期教学教学计划集锦5篇
  15. Spark入门之七:了解SparkSQL运行计划及调优
  16. html字体标签设计,36个重要的HTML标签
  17. 4.1 人工智能的发展趋势
  18. 最热门的10个美食公众号推荐
  19. Dijkstra算法求解单源最短路径问题
  20. oracle 远程连接配置

热门文章

  1. svd pca matlab,从SVD到PCA——奇妙的数学游戏
  2. java环境变量win8_win8java环境变量设置
  3. linux配置caffe环境,ubuntu14.04环境下配置caffe
  4. 浙大java语言程序设计_浙江大学java语言程序设计实验答案全集.doc
  5. linux中swi指令,Linux系统调用、新增系统调用方法
  6. oracle 日期转换成毫秒数,ORACLE:毫秒与日期的相互转换,获取某天的信息
  7. 基于matlab 系统仿真学报,基于MATLAB/Simulink的混合动力汽车正向仿真软件的开发...
  8. python使用复合语句def创建函数对象_Python 纯函数
  9. 生产批量检查web url并通过手机邮件报警案例
  10. oracle报609,ORA-609 错误分析及解决方法