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

yipeiwu_com7年前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快速查找算法的应用,分享给大家供大家参考。 具体实现方法如下: import random def partition(list_object,start,...

Python网站验证码识别

Python网站验证码识别

0x00 识别涉及技术 验证码识别涉及很多方面的内容。入手难度大,但是入手后,可拓展性又非常广泛,可玩性极强,成就感也很足。 验证码图像处理 验证码图像识别技术主要是操作图片内的像素点,...

浅谈python抛出异常、自定义异常, 传递异常

一. 抛出异常 Python用异常对象(exception object)表示异常情况,遇到错误后,会引发异常。如果异常对象并未被处理或捕捉,程序就会用所谓的回溯(Traceback,一...

python简单实现计算过期时间的方法

本文实例讲述了python简单实现计算过期时间的方法。分享给大家供大家参考。具体如下: def time_passed(value): now = datetime.now()...

Python实现批量更换指定目录下文件扩展名的方法

本文实例讲述了Python实现批量更换指定目录下文件扩展名的方法。分享给大家供大家参考,具体如下: #encoding=utf-8 #author: walker #date: 20...