zoukankan      html  css  js  c++  java
  • python3.6+django2.0+mysql搭建网站

    之前用过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版本语法方面做了很多改动。

  • 相关阅读:
    windows的80端口被占用时的处理方法
    Ansible自动化运维工具安装与使用实例
    Tomcat的测试网页换成自己项目首页
    LeetCode 219. Contains Duplicate II
    LeetCode Contest 177
    LeetCode 217. Contains Duplicate
    LeetCode 216. Combination Sum III(DFS)
    LeetCode 215. Kth Largest Element in an Array(排序)
    Contest 176 LeetCode 1354. Construct Target Array With Multiple Sums(优先队列,递推)
    Contest 176
  • 原文地址:https://www.cnblogs.com/1998lu/p/9274079.html
Copyright © 2011-2022 走看看