Python学习第116天(单表数据库的联系)
原本计划今天开始看多表的ORM操作,但是看了十多分钟发现对于单表操作,自己并不是非常熟悉,所以今天重新回顾一下从创建单边与数据库之间的关系到最终实现单表的增删改查过程。同时之前的继承等方面的也都一起进行吧。
大概用了两个小时吧,总体感觉最近一周的课程白看了,忘的差不多了,所以近期的内容就是复习啦
重要的几个位置需要进一步明确。
几个关键性的语句:
数据库的引入,通过class创建之后的重要两句话
python manage.py makemigrations 可生成migrations下的文件
python manage.py migrate 生成db.sqlite3文件
python manage.py runserver 127.0.0.1:8090 开始运行Django文件
下面来看一下今天从头开始写的文件,首先是urls.py文件
from django.contrib import admin from django.urls import path from first import views urlpatterns = [ path('admin/', admin.site.urls), path('index/', views.index), path('addbook/', views.add) ]
这里,我使用的是Django2,所以和讲课的内容不太一样
然后是models.py文件部分
from django.db import models # Create your models here. class Book(models.Model): id = models.IntegerField(primary_key=True) name = models.CharField(max_length=10) priece = models.IntegerField() pub_date = models.DateField()
接着是views文件
from django.shortcuts import render, HttpResponse from first.models import * # Create your views here. def index(req): return render(req,'index.html') def add(request): Book.objects.create(id=1, name='python', priece=99, pub_date='2017-1-1') Book.objects.create(id=2, name='cs', priece=9, pub_date='2017-1-1') Book.objects.create(id=3, name='MySQL', priece=89, pub_date='2017-1-1') Book.objects.create(id=4, name='php', priece=23, pub_date='2017-1-1') Book.objects.create(id=5, name='go', priece=11, pub_date='2017-1-1') Book.objects.create(id=6, name='for8', priece=18, pub_date='2017-1-1') #方法一:调用create的方法 return HttpResponse('添加成功')
最后是index.html文件
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> {% load staticfiles %} <title>Title</title> <style> *{ margin: 0; padding: 0; } .head{ line-height: 40px; background-color: green; color: white; text-align: center; } </style> </head> <body> <div class="outer"> <div class="head"></div> <div class="content"> <a href="/addbook/">添加书籍</a> <a href="/update/">修改书籍</a> <a href="/delete/">删除书籍</a> <a href="/select/">查询书籍</a> </div> <hr> <div class="queryResult"> {% for book in book_list %} <div> <p>{{ book.name }} {{ book.priece }}</p> </div> {% endfor %} </div> </div> </body> </html>
html部分忘记的更多,python模块部分的估计也忘记的差不多了,得花一段时间进行复习了,这样才能巩固啊
明天复习一下自定义的html方法,初步实现一个网页吧,可以收到反馈信息进行处理,和上述进行合并