第53天:Django实现代码及配置文件、Django连接mysql及ORM介绍

基于Django实现代码

        URL控制器

from django.conf.urls import url
from django.contrib import admin
from app01 import views

urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'^index/', views.index),
]

        视图

from django.shortcuts import render


def index(request):
    print('request')
    return render(request, 'index.html')

        模板文件




    
    Title
    



第一个模板文件

全局配置文件

LANGUAGE_CODE = 'zh-hans'

TIME_ZONE = 'Asia/Shanghai'

USE_I18N = True

USE_L10N = True

USE_TZ = False

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
    }
}

MIDDLEWARE = [
    'django.middleware.security.SecurityMiddleware',
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.middleware.common.CommonMiddleware',
    'django.middleware.csrf.CsrfViewMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'django.contrib.messages.middleware.MessageMiddleware',
    'django.middleware.clickjacking.XFrameOptionsMiddleware',
]

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'app01.apps.App01Config', # 这是全写
]

Django静态文件配置

        static

STATIC_URL = '/static/'
STATICFILES_DIRS = [
    os.path.join(BASE_DIR, 'static'),
]

        mycss.css

h4{
    color:red;
}

        myjs.js

$('h4').click(function () {
    $(this).css("color","green");
})

        insex.html




    
    Title
    
    



我是红色,点击变绿

django链接数据库

        配置完链接数据的代码之后,Django默认启动不起来了,原因是:内部使用的链接模块用的是mysqldb,但我们不使用这个模块,我们使用pymysql模块。

        如何更换pymysql

        在任意的__init__.py文件中添加一下代码

import pymysql
pymysql.install_as_MySQLdb()

 orm介绍

        orm即对象映射模型,在Django中操作数据库就不用在写原生的SQL语句,而是使用面向对象的语法和一些方法来操作数据库。

        直接编写原生sql语句会存在以下缺点:

        1. sql语句的执行效率问题:应用开发程序员需要耗费一大部分精力去优化sql语句。
        2. 数据库迁移问题:针对mysql开发的sql语句无法直接应用到oracle数据库上,一旦需要迁移数据库,便需要考虑跨平台问题。

        orm在哪里书写:

        models.py这个文件

        数据库迁移命令

python38 manage.py makemigrations
python38 manage.py migrate

 

 

 

你可能感兴趣的:(django,mysql,sqlite)