【Python3.6+Django2.0+Xadmin2.0系列教程之一(入门篇-上)】环境搭建及项目创建
由于工作需要,接触了大半年时间的Django+xadmin框架,一直没空对这块对进行相关的梳理。最近在同事的怂恿下,就在这分享下笔者的学习及工作经验吧。
好了,话不多说,下面开始进入正题:
转载请注明出处:https://www.cnblogs.com/v88v/p/8858853.html
环境需求:
笔者的工作系统环境:Mac 10.13.4+Python3.6.x+Django2.0.x+Xadmin2.0
因此本系列教程均是以此组合为基础展开讲解。其他系统版本也基本适用,有小部分不兼容之处请自行测试。
一、Django及xadmin安装
可以使用pip命令进行安装,或者直接下载安装包用python命令安装:
pip3 install Djangopip3 install git+git://github.com/sshwsfc/xadmin.git@django2
由于xadmin2.0官方版本存在一些兼容性bug,笔者对其源码进行了部分改动
在装完官方版的Django和xadmin之后,将笔者的xadmin修复版本替换到xadmin的原安装目录下即可。
更详细安装过程不再赘述,要细说的话得花一整天时间。
二、使用Pycharm创建项目
1、打开pycharm,第一次创建项目,我们就选择create new project
2、按图上的顺序配置好,Location及Application name可以根据自己需要自定义,项目解析器笔者此处选择了系统环境路径。全部设置好之后创建项目。
3、创建好的项目长得是这个样子的
4、点右上角的绿色启动箭头,OK,我们的项目已经正常跑起来了。
同时,我们也可以在项目目录下,执行命令来运行项目
python3 manage.py runserver 0.0.0.0:8000
万里长征迈出了胜利的第一步,接下来要来嫁接xadmin。
三、 改造Django项目,适配xadmin
1、首先,看看项目的结构
manage.py是网站的启动文件,一般不需要改动。
demo文件夹是网站配置文件夹,我们需要操作的文件主要有:settings.py和urls.py
settings.py是网站的主要配置文件
urls.py是路由文件
app文件夹是创建项目时默认创建的模块,主要的开发在这里。
2、下面开始着手改造,先来修改url.py
# from django.contrib import admin import xadmin from django.urls import path from django.conf import settings from django.conf.urls.static import staticurlpatterns = [# path('admin/', admin.site.urls),path(r'', xadmin.site.urls), ]
3、接着是修改settings.py,将127.0.0.1加入白名单
ALLOWED_HOSTS = ['127.0.0.1']
4、修改INSTALLED_APPS,加入xadmin相关组件
在最上面加入app.apps.AppConfig,接着添加xadmin及crispy_forms
INSTALLED_APPS = ['app.apps.AppConfig','xadmin','django.contrib.admin','django.contrib.auth','django.contrib.contenttypes','django.contrib.sessions','django.contrib.messages','django.contrib.staticfiles','crispy_forms', ]
5、这样,我们便能够让xadmin项目跑起来了。试试看
点击登录,会发现报了一个错
上面的提示是,没有用户表。原来,我们还没有对数据库进行初始化。
6、初始化数据库
项目创建好时默认的是使用sqlite3数据库,我们也可以指定它使用MySQL数据库,修改 DATABASES
DATABASES = {'default': {# 'ENGINE': 'django.db.backends.sqlite3',# 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),'ENGINE': 'django.db.backends.mysql', # 数据库引擎'NAME': 'demo','USER': 'root','PASSWORD': '123456','HOST': '127.0.0.1','PORT': '3306','OPTIONS': {'init_command': "SET sql_mode='STRICT_TRANS_TABLES';" # 初始化数据库的命令}} }
运行数据库迁移命令
python3 manage.py migrate
7、此外,我们还要建立一个超级管理员帐号,设置好帐号密码邮箱信息
python3 manage.py createsuperuser
8、好了,万事具备,下面可以顺利的进入管理界面了
9、现在这个界面是英文的,看起来是不是有点不太习惯呢?下面我们就要让它显示中文。
在settings.py文件开头添加一行代码
from django.utils.translation import ugettext_lazy as _
修改 LANGUAGE_CODE 和 LANGUAGES
LANGUAGE_CODE = 'zh-hans'LANGUAGES = [('en', _('English')),('zh-hans', _('Simplified Chinese')),('zh-hant', _('Traditional Chinese')), ]
10、重新运行一下,OK,我们熟悉的中文界面呈现在眼前。
好了,不早了,该下班回家了。 下一节,我们将创建模型。
转载请注明出处:https://www.cnblogs.com/v88v/p/8858853.html
转载于:https://www.cnblogs.com/v88v/p/8858853.html
【Python3.6+Django2.0+Xadmin2.0系列教程之一(入门篇-上)】环境搭建及项目创建相关推荐
- 火云开发课堂 - 《使用Cocos2d-x 开发3D游戏》系列 第二节:Cocos引擎开发环境搭建与项目创建!
<使用Cocos2d-x 开发3D游戏>系列在线课程 第二节:Cocos引擎开发环境搭建与项目创建! 视频地址:http://edu.csdn.net/course/detail/1330 ...
- python3.6 django教程_【Python3.6+Django2.0+Xadmin2.0系列教程一】环境搭建及项目创建
由于工作需要,接触了大半年时间的Django+xadmin框架,一直没空对这块对进行相关的梳理.最近在同事的怂恿下,就在这分享下笔者的学习及工作经验吧. 好了,话不多说,下面开始进入正题: 环境需求: ...
- AutoSAR系列讲解(入门篇)5.4-ECU的项目流程
AutoSAR系列讲解(入门篇)5.4-ECU的项目流程 ECU的项目流程 一.团队介绍 二.AutoSAR开发流程 ECU的项目流程 ->返回总目录<- 入门篇终于是要做完了(后面可能还 ...
- Web阅读器开发系列教程(入门篇)
作者:Sam 前言 最近我在慕课网发布了两门关于Web阅读应用开发的课程,采用Vue全家桶开发.免费课是入门级课程,初步实现了一个阅读器.实战课是进阶课程,实现了一个高性能的互联网阅读应用.两个项目都 ...
- C# Cad二次开发新手入门系列教程(一)开发环境搭建
目录 前言 开发需要做什么准备? 编写自己的第一个程序 前言 本课程主要针对刚接触Cad二次开发或者准备入门Cad二次开发的朋友,笔者是用的C#进行开发,在该系列教程内,笔者会带着大家从最基础的开发到 ...
- 微信程序开发系列教程(一)开发环境搭建
1. 您得从微信官方平台注册一个微信订阅号: https://mp.weixin.qq.com 2. 这个教程使用nodejs开发微信订阅号对应的消息服务器,因此需要具备基本的nodejs开发技能. ...
- 熊大UWB系列教程二:KEIL软件环境搭建以及程序下载
有超宽带定位项目需求请加微信沟通 微信号: cc12131789 工具准备: 硬件:JLink下载器,超宽带mini板,micro usb线. 软件:超宽带程序. 第一步.将micro usb线插到 ...
- OpenCV学习系列教程第五篇:测试和提高代码的效率
Opencv-Python学习系列教程第五篇 来自opencv-python官方学习文档,本人谨做翻译和注释,以及一些自己的理解 本文由作者翻译并进行代码验证,转载请注明出处~ 官方文档请参阅:htt ...
- h2 不能访问localhost_SpringBoot2.x系列教程44--H2数据库详解及搭建Web控制台
SpringBoot2.x系列教程44--H2数据库详解及搭建Web控制台 作者:一一哥 我在上一章节中讲解了Spring Boot中整合Mybatis,接下来我给大家介绍一款内存数据库--H2. H ...
最新文章
- R显卡VR性能如何?AMD发布 VRMark Cyan Room 测试结果
- 关于Win7 内存变小处理方法
- 从零开始实现主成分分析(PCA)算法
- C# 观察文件的更改
- LeetCode--41.缺失的第一个正数(C)
- 12499元!“不知名”折叠手机2分钟售罄,网友:备货就10台...
- C++ Qt学习笔记(2)简易计算器设计(为计算器添加菜单功能)
- js里css不起作用,CSS文件在NODE js中不起作用
- 微服务学习之OpenFeign【Hoxton.SR1版】
- Delphi SWF SDK v1.4 Crack Notes
- java js 加密解密算法_JS自己实现字符串加密和解密算法
- 使用POI创建PPT
- 《Java从入门到放弃》系列文章改版中...
- 【算法】并查集(Java)
- MATLAB解决线性最小二乘拟合
- 加性噪声--传递概率密度函数=噪声概率密度函数
- oracle数据库rank over用法,Oracle 中rank() over()的用法
- 计算机第四章文字处理软件应用课后答案,计算机应用基础第四章文字处理软件.doc...
- java 线程强制执行join
- stderr/stdout用法