python - Django 表單問題?
問題描述
關(guān)于Django表單問題先給出models.py和forms.py
圖片描述
再給出views.py的代碼
def articleUpdate(request, articleId):’’’Update the article instance: 1. Get the article to update; redirect to 404 if not found2. Render a bound form if the method is GET3. If the form is valid, save it to the model, otherwise render abound form with error messages’’’articleToUpdate = get_object_or_404( Article, id=articleId)template = ’article/articleCreateUpdate.html’if request.method == ’GET’: print(ArticleForm(instance=articleToUpdate)) articleForm = ArticleForm(instance=articleToUpdate) return render(request, template, {’articleForm’:articleForm, ’article’:articleToUpdate})# POSTarticleForm = ArticleForm(request.POST, instance=articleToUpdate)if not articleForm.is_valid(): return render(request, template, {’articleForm’:articleForm, ’article’:articleToUpdate})articleForm.save()messages.success(request, ’文章已修改’)return redirect(’article:articleRead’, articleId=articleId)def commentCreate(request, articleId): ’’’Create a new article instance1. If method is GET, render an empty form2 . If method is POST, perform form validation. Display error messages if the form is invalid3. Save the form to the model and redirect to the article page’’’template = ’article/commentCreate.html’ articleToUpdate = get_object_or_404( Article, id=articleId) if request.method == ’GET’:return render(request, template,{’commentForm’:CommentForm(), ’article’:articleToUpdate}) # POSTcommentForm = CommentForm(request.POST, instance=articleToUpdate) if not commentForm.is_valid():return render(request, template, {’commentForm’:commentForm(), ’article’:articleToUpdate}) commentForm.save() messages.success(request,’留言已新增’) return redirect(’article:articleRead’,articleId=articleId)
兩則方法是幾乎是一樣的,都是用forms表單,但是我使用的forms表單并不是同一類,一個是ArticleForm一個是CommentForm但是結(jié)果出現(xiàn)在views:commentCreate里它的效果是等于articleUpdate,即新增留言變成修改文章內(nèi)容
問題解答
回答1:表單是類,你取出數(shù)據(jù),為什么不填充到表單中。
else:form = CommentsForm(request.POST)if form.is_valid():
相關(guān)文章:
1. PC端訪問卻變成移動端地址問題#python#scrapy2. javascript - 京東首頁如何實現(xiàn)pc端和移動端加載不同的html的?3. javascript - 阿里云虛擬主機(jī)怎么運(yùn)行webpack打包的vue餓了么web-app4. angular.js使用$resource服務(wù)把數(shù)據(jù)存入mongodb的問題。5. javascript - uc、qq、搜狗 以上三個手機(jī)瀏覽器判斷移動端的js代碼不執(zhí)行6. python - nginx+uwsgi啟動提示 nginx: [emerg] unknown directive "socket"?如何解決?7. python3.x - python3.5使用pyinstaller打包報錯找不到libpython3.5mu.so.1.0等文件求解?8. python round 四舍五入?9. python - 請問django的orm能否獨(dú)立拿出來使用?例如在非web程序中使用10. mysql優(yōu)化 - mysql like語句會導(dǎo)致全表掃描?
