python3.6+django2.0+mysql搭建网站过程详解

yipeiwu_com5年前Python基础

之前用过python2.7版本,改用3.6版本发现很多语法发生了变化。

在templates里新建一个html文件,命名为index.html作为要测试的界面,

新建一个应用,Tools-》Run manage.py Task 输入startapp+应用名称

然后对urls进行配置,配置如下:

from django.conf.urls import url
from . import views
 
urlpatterns = [
  url(r'^index/', views.index),
]

在视图文件里views.py里进行定义:

from django.shortcuts import render
 
# Create your views here.
def index(request):
  return render(request,'index.html')

在项目的同名的文件下里的urls.Py进行映射:

urlpatterns = [
  url('admin/', admin.site.urls),
  url(r'^std_web/', include('std_web.urls', namespace='std_web')),
]

这里的std_web是创建的应用名称,意思是映射std_web里的urls,跳转到std_web的urls.py里。

这里要注意:要在settings.py里对新建的项目进行配置

INSTALLED_APPS = [
  'django.contrib.admin',
  'django.contrib.auth',
  'django.contrib.contenttypes',
  'django.contrib.sessions',
  'django.contrib.messages',
  'django.contrib.staticfiles',
  'std_web',
]

python2.7使用的MySQLdb连接数据库,还没有供3.X版本使用,在python3.6版本使用的是pymysql进行连接,使用命令安装,或者在pycharm里安装

在settings里对连接数据库部分进行配置,这部分于2.7相同,不在赘述。

要注意要在__init__.py文件中添加以下代码:

#coding=utf-8
import pymysql
pymysql.install_as_MySQLdb()

数据库迁移代码2.7与3.6版本不同,

3.6版本如下:python manage.py makemigrations

python manage.py migrate

在2.7版本下迁移数据库的同时会让你创建一个超级管理员账户,用以管理后台,3.6版本没有这个功能,要自己进行创建超级管理员用户

命令:python manage.py createsuperuser

现在显示的界面是英文版,改成中文版:

在settings.py文件开头添加

from django.utils.translation import ugettext_lazy as _

在将settings.py文件里下面的代码做更改:

LANGUAGE_CODE = 'zh-hans'
LANGUAGES = [
  ('en', _('English')),
  ('zh-hans', _('Simplified Chinese')),
  ('zh-hant', _('Traditional Chinese')),
]

再次运行就会发现界面是我们熟悉的中文界面了。

python3.X版本相较于python2.7版本语法方面做了很多改动。

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

相关文章

Python实现新浪博客备份的方法

本文实例讲述了Python实现新浪博客备份的方法。分享给大家供大家参考,具体如下: Python2.7.2版本实现,推荐在IDE中运行。 # -*- coding:UTF-8 -*-...

python 打印出所有的对象/模块的属性(实例代码)

实例如下: import sys def print_all(module_): modulelist = dir(module_) length = len(module...

python使用paramiko模块通过ssh2协议对交换机进行配置的方法

该代码用的是paramiko模块,python版本是python2.7 下面上源码 # -*- coding: utf-8 -*- import paramiko import t...

python TCP Socket的粘包和分包的处理详解

python TCP Socket的粘包和分包的处理详解

概述 在进行TCP Socket开发时,都需要处理数据包粘包和分包的情况。本文详细讲解解决该问题的步骤。使用的语言是Python。实际上解决该问题很简单,在应用层下,定义一个协议:消息头...

python 解决cv2绘制中文乱码问题

python 解决cv2绘制中文乱码问题

因为使用cv2.putText() 只能显示英文字符,中文会出现乱码问题, 因此使用PIL在图片上绘制添加中文,可以指定字体文件。 大体思路: OpenCV图片格式转换成PIL的图片格式...