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设计】。

相关文章

tensorflow 重置/清除计算图的实现

调用tf.reset_default_graph()重置计算图 当在搭建网络查看计算图时,如果重复运行程序会导致重定义报错。为了可以在同一个线程或者交互式环境中(ipython/jupy...

Python 元类实例解析

Python 元类实例解析

龟叔发明了 Python,然后集成了一堆概念在这门语言里面,比如:迭代器,装饰器,函数,生成器,类,对象,协程等等。 这些概念对初学者似乎没一个好懂的,不过还有比这更难的概念,它是 Py...

python算法学习之桶排序算法实例(分块排序)

复制代码 代码如下:# -*- coding: utf-8 -*- def insertion_sort(A):    """插入排序,作为桶排序的子排序"...

python取数作为临时极大值(极小值)的方法

编程中有时候需要一个初始极大值(或极小值)作为temp,当然可以自定义设置为10000(whatever),不过python中有一个值可以代替之: 在python2.7中可以用这个(不...

python实现媒体播放器功能

本文实例为大家分享了python实现媒体播放器功能的具体代码,供大家参考,具体内容如下 playMP3.py # -*- coding: utf-8 -*- import wx;...