由于工作需要,接触了大半年时间的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系列教程之一(入门篇-上)】环境搭建及项目创建相关推荐

  1. 火云开发课堂 - 《使用Cocos2d-x 开发3D游戏》系列 第二节:Cocos引擎开发环境搭建与项目创建!

    <使用Cocos2d-x 开发3D游戏>系列在线课程 第二节:Cocos引擎开发环境搭建与项目创建! 视频地址:http://edu.csdn.net/course/detail/1330 ...

  2. python3.6 django教程_【Python3.6+Django2.0+Xadmin2.0系列教程一】环境搭建及项目创建

    由于工作需要,接触了大半年时间的Django+xadmin框架,一直没空对这块对进行相关的梳理.最近在同事的怂恿下,就在这分享下笔者的学习及工作经验吧. 好了,话不多说,下面开始进入正题: 环境需求: ...

  3. AutoSAR系列讲解(入门篇)5.4-ECU的项目流程

    AutoSAR系列讲解(入门篇)5.4-ECU的项目流程 ECU的项目流程 一.团队介绍 二.AutoSAR开发流程 ECU的项目流程 ->返回总目录<- 入门篇终于是要做完了(后面可能还 ...

  4. Web阅读器开发系列教程(入门篇)

    作者:Sam 前言 最近我在慕课网发布了两门关于Web阅读应用开发的课程,采用Vue全家桶开发.免费课是入门级课程,初步实现了一个阅读器.实战课是进阶课程,实现了一个高性能的互联网阅读应用.两个项目都 ...

  5. C# Cad二次开发新手入门系列教程(一)开发环境搭建

    目录 前言 开发需要做什么准备? 编写自己的第一个程序 前言 本课程主要针对刚接触Cad二次开发或者准备入门Cad二次开发的朋友,笔者是用的C#进行开发,在该系列教程内,笔者会带着大家从最基础的开发到 ...

  6. 微信程序开发系列教程(一)开发环境搭建

    1. 您得从微信官方平台注册一个微信订阅号: https://mp.weixin.qq.com 2. 这个教程使用nodejs开发微信订阅号对应的消息服务器,因此需要具备基本的nodejs开发技能. ...

  7. 熊大UWB系列教程二:KEIL软件环境搭建以及程序下载

    有超宽带定位项目需求请加微信沟通  微信号: cc12131789 工具准备: 硬件:JLink下载器,超宽带mini板,micro usb线. 软件:超宽带程序. 第一步.将micro usb线插到 ...

  8. OpenCV学习系列教程第五篇:测试和提高代码的效率

    Opencv-Python学习系列教程第五篇 来自opencv-python官方学习文档,本人谨做翻译和注释,以及一些自己的理解 本文由作者翻译并进行代码验证,转载请注明出处~ 官方文档请参阅:htt ...

  9. h2 不能访问localhost_SpringBoot2.x系列教程44--H2数据库详解及搭建Web控制台

    SpringBoot2.x系列教程44--H2数据库详解及搭建Web控制台 作者:一一哥 我在上一章节中讲解了Spring Boot中整合Mybatis,接下来我给大家介绍一款内存数据库--H2. H ...

最新文章

  1. R显卡VR性能如何?AMD发布 VRMark Cyan Room 测试结果
  2. 关于Win7 内存变小处理方法
  3. 从零开始实现主成分分析(PCA)算法
  4. C# 观察文件的更改
  5. LeetCode--41.缺失的第一个正数(C)
  6. 12499元!“不知名”折叠手机2分钟售罄,网友:备货就10台...
  7. C++ Qt学习笔记(2)简易计算器设计(为计算器添加菜单功能)
  8. js里css不起作用,CSS文件在NODE js中不起作用
  9. 微服务学习之OpenFeign【Hoxton.SR1版】
  10. Delphi SWF SDK v1.4 Crack Notes
  11. java js 加密解密算法_JS自己实现字符串加密和解密算法
  12. 使用POI创建PPT
  13. 《Java从入门到放弃》系列文章改版中...
  14. 【算法】并查集(Java)
  15. MATLAB解决线性最小二乘拟合
  16. 加性噪声--传递概率密度函数=噪声概率密度函数
  17. oracle数据库rank over用法,Oracle 中rank() over()的用法
  18. 计算机第四章文字处理软件应用课后答案,计算机应用基础第四章文字处理软件.doc...
  19. java 线程强制执行join
  20. stderr/stdout用法

热门文章

  1. eoiioe IE 和 firefox js 兼容问题
  2. 电脑中所有exe文件无法运行解决方案
  3. ASP.NET自定义控件组件开发 第四章 组合控件开发CompositeControl
  4. (To Me Just)c#中的WebBrowser类的使用注意事项!
  5. CV00-01-CV基础理论
  6. 区块链技术背后的运行逻辑
  7. aws s3 静态网站_如何将静态网站或JAMstack应用托管并部署到AWS S3和CloudFront
  8. ui培训教程分享:平面设计怎样视觉空间感?
  9. APP自动化测试过程概述
  10. 零基础学习UI设计有哪些简单有效的方法