完成功能當沒有登錄的時候是訪問不到a.html的必需要登錄才能看到html
咱們建立兩個頁面,放在welcome,中一個a.html,一個b.htmlpython
接着在 views.py中寫函數數據庫
在welcome.html中添加代碼並在BlogUser/urls.py內配置路徑django
完成發佈博客系統(增刪改查)session
在blog下新建一個名爲BlogA的python包app
在BlogA裏,咱們須要將BlogUser下的apps和admin粘貼到BlogA包下,修改apps內的name=‘BlogA’函數
在BlogA下新建models、urls和views,注意不要寫錯單詞post
修改settings.py下 INSTALLED_APPSui
在BlogA下models建立一個模型url
from django.db import models from BlogUser.models import BlogUser # Create your models here. class Blog(models.Model): title=models.CharField(max_length=20,null=True) context = models.CharField(max_length=500,null=True) #默認當前時間 createDate = models.DateTimeField(null=True) #BlogUser.BlogUser app.modelname BlogUser = models.ForeignKey('BlogUser.BlogUser',on_delete=None)
建立數據庫表
操做完成以後咱們會發現數據庫中已新增一個名爲bloga_blog的表
接下來咱們須要建立一個發佈博客的頁面
首先,在welcome.html裏增長一個發佈博客的鏈接
在templates下新建一個名爲fabu.html
在fabu.html裏編寫如下代碼
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <h1>歡迎{{ user.username }}發佈博客...</h1> <span style="color: red">{{ msg }}</span> <form action="/BlogA/fabu" method="post"> {% csrf_token %} <p>標題:<input name="title" type="text" style="width: 500px"></p> <p>內容:<textarea name="context" style="width: 500px;height: 300px"> </textarea></p> <p><input type="submit" value="確認發佈"></p> </form> </body> </html>
在blog下urls.py中配置路徑
在BlogA下urls.py中配置路徑
在BlogA下views.py中建立fabu函數
from django.shortcuts import render,redirect,reverse from .models import * from django.http import HttpResponse import time,datetime def fabu(request): user = request.session.get('user', None) if request.method=='GET': #進到BlogA中的發佈 if user is not None: return render(request,'fabu.html',{'user': request.session.get('user', None)}) else: return render(request,'login.html') elif request.method=='POST': blogA=Blog() blogA.title=request.POST.get('title') blogA.context=request.POST.get('context') blogA.createDate=datetime.datetime.now() uid= request.session.get('user')['id'] bloguserset=BlogUser.objects.filter(pk=uid).all() blogA.BlogUser=bloguserset.first() blogA.save() ret={'msg':'發佈成功','user':request.session.get('user')} return render(request,'fabu.html',ret)
如今咱們就能夠登錄後發佈博客並保存到數據庫中
若有錯誤之處,歡迎評論指出