2、templates文件夹创建以及配置文件中的路径配置
3、django连接MySQL
1.配置文件配置
4、静态文件配置
1.手动创建static文件夹
2.html页面上动态解析接口前缀
5、创建类(建表)并执行数据库迁移命令
fromdjango.dbimportmodels
#Createyourmodelshere.
classBook(models.Model):title=models.CharField(max_length=32)price=models.CharField(max_length=32)publish_time=models.DateField(auto_now_add=True)
publish=models.ForeignKey(to='Publish')authors=models.ManyToManyField(to='Author')
classPublish(models.Model):name=models.CharField(max_length=32)addr=models.CharField(max_length=32)
classAuthor(models.Model):name=models.CharField(max_length=32)age=models.CharField(max_length=64)
author_detail=models.OneToOneField(to='AuthorDetail')
classAuthorDetail(models.Model):phone=models.BigIntegerField()addr=models.CharField(max_length=32)
models.py
fromdjango.shortcutsimportrender,reverse,redirectfromapp01importmodels#Createyourviewshere.
defhome(request):returnrender(request,'home.html')
defshow_book(request):#获取书籍表中所有的数展示到前端book_queryset=models.Book.objects.all()returnrender(request,'book_list.html',locals())
defadd_book(request):ifrequest.method=='POST':title=request.POST.get('title')price=request.POST.get('price')publish_time=request.POST.get('publish_time')publish_id=request.POST.get('publish')authors_list=request.POST.getlist('authors')#操作数据库#书籍表book_obj=models.Book.objects.create(title=title,price=price,publish_time=publish_time,publish_id=publish_id)
#书籍与作者关系表book_obj.authors.add(*authors_list)
#重定向到书籍展示页returnredirect(reverse('show_book'))#将网站出版社和作者查询出来展示到前端页面供用户选择publish_queryset=models.Publish.objects.all()author_queryset=models.Author.objects.all()returnrender(request,'add_book.html',locals())
defedit_book(request,edit_id):#先获取用户想要编辑的对象,展示给用户看,用户在基于原书籍进行修改edit_obj=models.Book.objects.filter(pk=edit_id).first()ifrequest.method=='POST':title=request.POST.get('title')price=request.POST.get('price')publish_time=request.POST.get('publish_time')publish_id=request.POST.get('publish')authors_list=request.POST.getlist('authors')models.Book.objects.filter(pk=edit_id).update(title=title,price=price,publish_time=publish_time,publish_id=publish_id)edit_obj.authors.set(authors_list)returnredirect(reverse('show_book'))
publish_queryset=models.Publish.objects.all()author_queryset=models.Author.objects.all()returnrender(request,'edit_book.html',locals())pass
defdelete_book(request,delete_id):models.Book.objects.filter(pk=delete_id).delete()#重定向到书籍展示页returnredirect(reverse('show_book'))
views.py
fromapp01importviews
urlpatterns=[url(r'^admin/',admin.site.urls),#首页url(r'^$',views.home,name='home'),#书籍展示页url(r'^book_list/',views.show_book,name='show_book'),#书籍添加页url(r'^add_book/',views.add_book,name='add'),#书籍编辑页url(r'^edit_book/(P
urls.py
templates文件夹下的html页面