mysql添加执行配置文件路径_项目那几步走:先配置setting路径文件、创建数据库、执行数据库迁移命令、配置mysql数据库信息、注册app、注释中间件、pymysql替换mysqldb-配置ur...

本文详细介绍了在Django项目中如何配置并使用MySQL数据库,包括修改settings文件设置数据库信息,创建数据库,执行数据库迁移,注册应用,配置urls和views,以及展示HTML页面。同时,还展示了如何进行数据操作,如创建、查询和更新记录。
摘要由CSDN通过智能技术生成

django使用mysql数据库:

首先cmd创建库

92d76e83e7efe76f36b3ffc81dce94f8.png

1、settings:

"""

Django settings for day42 project.

Generated by 'django-admin startproject' using Django 1.11.26.

For more information on this file, see

https://docs.djangoproject.com/en/1.11/topics/settings/

For the full list of settings and their values, see

https://docs.djangoproject.com/en/1.11/ref/settings/

"""

import os

# Build paths inside the project like this: os.path.join(BASE_DIR, ...)

BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))

# Quick-start development settings - unsuitable for production

# See https://docs.djangoproject.com/en/1.11/howto/deployment/checklist/

# SECURITY WARNING: keep the secret key used in production secret!

SECRET_KEY = 't2#m1=lilserv388oi=m6i=4b7@-lj6@+kg2-_^oa)wdpi5(96'

# SECURITY WARNING: don't run with debug turned on in production!

DEBUG = True

ALLOWED_HOSTS = []

# Application definition

INSTALLED_APPS = [

'django.contrib.admin', #系统内置app

'django.contrib.auth',

'django.contrib.contenttypes',

'django.contrib.sessions',

'django.contrib.messages',

'django.contrib.staticfiles',

"app01.apps.App01Config", #注册app

]

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',

]

ROOT_URLCONF = 'day42.urls'

TEMPLATES = [

{

'BACKEND': 'django.template.backends.django.DjangoTemplates',

'DIRS': [os.path.join ( BASE_DIR, 'templates' )]

,

'APP_DIRS': True,

'OPTIONS': {

'context_processors': [

'django.template.context_processors.debug',

'django.template.context_processors.request',

'django.contrib.auth.context_processors.auth',

'django.contrib.messages.context_processors.messages',

],

},

},

]

WSGI_APPLICATION = 'day42.wsgi.application'

# Database

# https://docs.djangoproject.com/en/1.11/ref/settings/#databases

#配置数据库信息:

DATABASES = {

'default': {

'ENGINE': 'django.db.backends.mysql',

'NAME': "day43",

'HOST': "127.0.0.1",

'PORT': 3306,

'USER': "root",

'PASSWORD': "123",

}

}

#默认使用mysqldb的模块 要使用pymysql替换mysqldb

import pymysql

pymysql.install_as_MySQLdb()

# Password validation

# https://docs.djangoproject.com/en/1.11/ref/settings/#auth-password-validators

AUTH_PASSWORD_VALIDATORS = [

{

'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator',

},

{

'NAME': 'django.contrib.auth.password_validation.MinimumLengthValidator',

},

{

'NAME': 'django.contrib.auth.password_validation.CommonPasswordValidator',

},

{

'NAME': 'django.contrib.auth.password_validation.NumericPasswordValidator',

},

]

# Internationalization

# https://docs.djangoproject.com/en/1.11/topics/i18n/

LANGUAGE_CODE = 'en-us'

TIME_ZONE = 'UTC'

USE_I18N = True

USE_L10N = True

USE_TZ = True

# Static files (CSS, JavaScript, Images)

# https://docs.djangoproject.com/en/1.11/howto/static-files/

#配置路径文件:

STATIC_URL = '/static/'

STATICFILES_DIRS = [

os.path.join(BASE_DIR,'static')

]

2、urls路由:

"""day42 URL Configuration

The `urlpatterns` list routes URLs to views. For more information please see:

https://docs.djangoproject.com/en/1.11/topics/http/urls/

Examples:

Function views

1. Add an import: from my_app import views

2. Add a URL to urlpatterns: url(r'^$', views.home, name='home')

Class-based views

1. Add an import: from other_app.views import Home

2. Add a URL to urlpatterns: url(r'^$', Home.as_view(), name='home')

Including another URLconf

1. Import the include() function: from django.conf.urls import url, include

2. Add a URL to urlpatterns: url(r'^blog/', include('blog.urls'))

"""

from django.conf.urls import url

from django.contrib import admin

from django.shortcuts import HttpResponse, render

from app01 import views

#配置urls路由

urlpatterns = [

url(r'^admin/', admin.site.urls),

url(r'^index/', views.index),

url(r'^modal/', views.modal),

url(r'^login/', views.login),

]

3、views视图函数:

from django.shortcuts import render,HttpResponse

# Create your views here.

def index(request):

print(request.path_info)

# return HttpResponse('

index

')

return render(request, 'index.html')

def modal(request):

return render(request, 'modal.html')

def login(request):

return render(request,"login.html")

4、HTML页面展示:

Title

{# 增加bootstrap样式:#}

{# 导入css文件:#}

Email address

Password

Remember me

Sign in

5、导入css文件:

{# 增加bootstrap样式:#}

{# 导入css文件:#}

6、models配置数据库表:

from django.db import models

# Create your models here.

#定义User表、username是具体的字段、CharField是可变长的数据类型:

class User(models.Model):

username = models.CharField(max_length=32)

password = models.CharField(max_length=32)

执行数据库迁移的命令:

python manage.py makemigrations(检测已经注册的app)

71529ce9b58b5c9a911aba7e2d8560e7.png

python manage.py migrate(真正的迁移命令:)

69b9ee8832cd4d5f8ce438b3b59c03b9.png

database-database source-MY SQL:

37c0583ad1bec720b23ed100c0cc1693.png

b7eef8b51f2def1ea2cbd2dbbb39c861.png

app01和表名组合:

1068f63d8ad6d9961e1717a5833c3f3d.png

双击表名增加数据并提交:

81e53ba6ba0ac3dc73301e225ff0f60f.png

所有的功能通过类操作:

models.类名.objects.all()--获取表里面所有的数据、获取的是列表

结果:, , ]>

models.User.objects.get(username="alex",)--获取一条数据、获取的是对象、查询不到报错、查询多条数据报错

结果:User object

models.User.objects.filter(username="alex",password="dsb")--过滤获取对象列表

结果:]>

obj = models.Publisher.objects.create(name=pub_name)--    创建

models.Publisher.objects.filter(pk=pk).delete() # 对象列表--    删除

models.Publisher.objects.get(pk=pk).delete() # 对象--        删除

obj.name = pub_name # 内存中修改属性            修改

obj.save() # 提交保存

models.Publisher.objects.filter(pk=pk).update(name=pub_name)  修改

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值