博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
django MVC模式 数据库的操作mysql
阅读量:6258 次
发布时间:2019-06-22

本文共 3433 字,大约阅读时间需要 11 分钟。

介绍:本节课我们继续学习djangoWEB框架的开发,这节课主要是学习如何访问数据库,django如何自动为我们创建好表结构等相关内容。

 

1、首先我们打开settings.py找到DATABASES关键字,这个是配置我们的数据库。

里面的属性不做介绍了,一看就懂了。

2、添加自己的一个startapp polls,并在settings中配置。

也可以直接写'polls'

3、打开我们刚刚创建的应用polls -->models.py内容如下:

# -*- coding: utf-8 -*- from __future__ import unicode_literals from django.db import models # Create your models here. class Test(models.Model):     name = models.CharField(max_length=20) 解释: 以上的类名代表了数据库表名,且继承了models.Model,类里面的字段代表数据表中的字段(name), 数据类型则由CharField(相当于varchar)、DateField(相当于datetime), max_length 参数限定长度。

4、在pycharm中运行manage.py

 

 成功后出现:

我们执行三条命令如下:

# 创建表结构(内置的django表结构)

manage.py@pythondjango > migrate

D:\PyCharm\bin\runnerw.exe D:\Python\python.exe D:\PyCharm\helpers\pycharm\django_manage.py migrate D:/pythondjango
Operations to perform:
Apply all migrations: admin, auth, contenttypes, sessions
Running migrations:
Applying contenttypes.0001_initial... OK
Applying auth.0001_initial... OK
Applying admin.0001_initial... OK
Applying admin.0002_logentry_remove_auto_add... OK
Applying contenttypes.0002_remove_content_type_name... OK
Applying auth.0002_alter_permission_name_max_length... OK
Applying auth.0003_alter_user_email_max_length... OK
Applying auth.0004_alter_user_username_opts... OK
Applying auth.0005_alter_user_last_login_null... OK
Applying auth.0006_require_contenttypes_0002... OK
Applying auth.0007_alter_validators_add_error_messages... OK
Applying auth.0008_alter_user_username_max_length... OK
Applying sessions.0001_initial... OK

Process finished with exit code 0

让 Django 知道我们在我们的模型有一些变更,生成一个文件

manage.py@pythondjango > makemigrations polls

D:\PyCharm\bin\runnerw.exe D:\Python\python.exe D:\PyCharm\helpers\pycharm\django_manage.py makemigrations polls D:/pythondjango
Migrations for 'polls':
polls\migrations\0001_initial.py
- Create model Test
Following files were affected
D:\pythondjango\polls\migrations\0001_initial.py
Process finished with exit code 0

文件内容是:

# -*- coding: utf-8 -*- # Generated by Django 1.11.3 on 2017-07-21 09:15 from __future__ import unicode_literals from django.db import migrations, models class Migration(migrations.Migration):     initial = True     dependencies = [     ]     operations = [         migrations.CreateModel(             name='Test',             fields=[                 ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),                 ('name', models.CharField(max_length=20)),             ],         ),     ] 其实里面记录了数据库的一些变化

manage.py@pythondjango > migrate polls

D:\PyCharm\bin\runnerw.exe D:\Python\python.exe D:\PyCharm\helpers\pycharm\django_manage.py migrate polls D:/pythondjango
Operations to perform:
Apply all migrations: polls
Running migrations:
Applying polls.0001_initial... OK

Process finished with exit code 0

表名组成结构为:应用名_类名

注意:尽管我们没有在models给表设置主键,但是Django会自动添加一个id作为主键

操作数据库:

在urls.py中添加一个映射:

 

 向数据库中添加一个值,修改views.py

# -*- coding: utf-8 -*- from __future__ import unicode_literals from django.http import HttpResponse from polls.models import Test from django.shortcuts import render # Create your views here. # 数据库操作 def testdb(request):     test1 = Test(name='温鸿雨')     test1.save()     return HttpResponse("

数据添加成功!

") 添加成功:

 总结:本节课主要分享django与mysql数据库的搭配使用,如何创建数据库表结构,settings文件中配置数据库,添加自己新创建的应用,如何在models.py中创建一个实例,属性的含义等内                容。同时借助pycharm自动生成数据库表,并且创建表结构是不需要指定主键,django会帮助我们创建一个id。在views.py中向数据库添加值的步骤。

  

转载于:https://www.cnblogs.com/wenhongyu/p/7219002.html

你可能感兴趣的文章
jQuery File Upload
查看>>
bbb板运行rtems-编写led底层驱动
查看>>
如何从零安装Mysql
查看>>
Appium简介及工作原理
查看>>
IP 类型转换
查看>>
mysql实践1
查看>>
struts2 Preparable接口
查看>>
hdu4578(线段树)
查看>>
写一个脚本简单检测局域网存活的机器
查看>>
Dubbo
查看>>
angular与jquery 进行json提交数据,报文头格式不一致的解决方案
查看>>
更换笔记本内存:自己动手修电脑(一)
查看>>
POJ2262-Goldbach's Conjecture
查看>>
区分扫描枪输入和键盘输入的实现
查看>>
【ssh服务配置】
查看>>
【mongdb主从复制和同步】
查看>>
下载文件downloadFile
查看>>
课后作业-阅读任务-阅读笔记-3
查看>>
hdoj1078(介绍记忆化搜索及其模板)
查看>>
cf-Round542-Div2-B(贪心)
查看>>