def create(self): data = self.parse_data() article = models.Article(**data) if self.request.FILES: print(self.request.FILES) article.head_img = ArticleHandler.file_upload( self.request.FILES['head_img']) article.save()
def contribute(request): if request.method=="GET": article_form=form.ArticleModelForm() if request.method=="POST": article_form=form.ArticleModelForm(request.POST,request.FILES) if article_form.is_valid(): #将模型中的参数转化为字典去取出来 data=article_form.cleaned_data data['author_id'] = request.user.userprofile.id article_object=models.Article(**data) article_object.save() return HttpResponse("ok!!") return render(request, "bbs/contribute-article.html", {"article_form": article_form})
def new_article(request): if request.method=="GET": article_form = forms.ArticleModelForm() #实例化form类 return render(request,'bbs/new_article.html',{'article_form':article_form,}) elif request.method == 'POST': print(request.POST) print(request.FILES) article_form = forms.ArticleModelForm(request.POST,request.FILES) if article_form.is_valid(): data = article_form.cleaned_data data['author_id'] = request.user.userprofile.id article_obj = models.Article(**data) article_obj.save() # article_form.save() else: return render(request,'bbs/new_article.html',{'article_form':article_form,}) return HttpResponse('创建成功')
def new_article(request):#发贴功能 if request.method == "GET": article_form = form.ArticleModelForm() return render(request,'bbs/html/new_article.html',{'article_form':article_form}) elif request.method =="POST": print(request.POST) print(request.FILES) article_form = form.ArticleModelForm(request.POST,request.FILES)#文件和图片在FILES参数里 if article_form.is_valid(): data = article_form.cleaned_data data['author_id'] = request.user.userprofile.id article_obj = models.Article(**data) article_obj.save() #article_form.save() return HttpResponse('发布成功') else: return render(request, 'bbs/html/new_article.html', {'article_form': article_form})
def new_article(request): if request.method == 'GET': article_form = form.ArticleModelForm() return render(request, 'bbs/new_article.html', {"article_form": article_form}) elif request.method == 'POST': article_form = form.ArticleModelForm(request.POST, request.FILES) if article_form.is_valid(): print('----', article_form.cleaned_data) print(request.user) # article_form.cleaned_data['author_id'] = request.user.userprofile.id print("发布成功") data = article_form.cleaned_data #将验证好的数据转换成字典 data['author_id'] = request.user.userprofile.id # 将用户id塞进去 article_obj = models.Article(**data) # 添加文章 article_obj.save() # 保存 return HttpResponse("发布成功") else: return render(request, 'bbs/new_article.html', {"article_form": article_form})
def new_article(request): ''' 发表新文章 ''' if request.method == 'GET': article_form = forms.ArticleModelForm() return render(request, 'bbs/new_article.html', locals()) elif request.method == 'POST': print(request.POST) article_form = forms.ArticleModelForm(request.POST, request.FILES) if article_form.is_valid(): data = article_form.cleaned_data data['author_id'] = request.user.userprofile.id article_obj = models.Article(**data) article_obj.save() # article_form.save() return HttpResponse('发帖成功') else: return render(request, 'bbs/new_article.html', locals())
def new_article(request): if request.method == 'GET': article_form = form.ArticleModelForm() return render(request, 'bbs/new_article.html', {'article_form': article_form}) elif request.method == 'POST': article_form = form.ArticleModelForm(request.POST, request.FILES) if article_form.is_valid(): data = article_form.cleaned_data data['author_id'] = request.user.userprofile.id data['pub_date'] = datetime.datetime.now() article_obj = models.Article(**data) user_obj = models.UserProfile.objects.get(id=data['author_id']) experience = user_obj.experience + 100 user_obj.experience = experience user_obj.save() article_obj.save() return HttpResponseRedirect('/bbs') else: return render(request, 'bbs/new_article.html', {'article_form': article_form})
def new_article(request): from bbs.form import ArticleModelForm if request.method == 'GET': article_form = ArticleModelForm() elif request.method == 'POST': # 注意:如果是上传图片,必须用request.FILES,用POST是没法收到图片的。然后from里面必须写上"multipart/form-data"。两个条件必须满足才能上传成功。 # 想要后台能够收到图片,就得在ArticleModelForm(request.POST,request.FILES) article_form = ArticleModelForm(request.POST, request.FILES) #注意cleaned_data出现的位置,必须在is_valid()后面,否则会报错 print(article_form.is_valid(), article_form.cleaned_data, article_form.errors) print(request.FILES) if article_form.is_valid(): data = article_form.cleaned_data #利用cleaned_data将其变成字典形式 print(type(data)) data['author_id'] = request.user.userprofile.id article_obj = models.Article(**data) article_obj.save() # article_form.save() #由于对article_form添了加内容,所以不能直接用ModelForm的save了。 return HttpResponseRedirect('/bbs') return render(request, 'bbs/new_article.html', {'article_form': article_form})
def new_article(request): if request.method == "GET": article_form = form.ArticleModelForm() return render(request, "bbs/new_article.html", { "category_list": category_list, "article_form": article_form }) elif request.method == "POST": print(request.POST) article_form = form.ArticleModelForm(request.POST, request.FILES) if article_form.is_valid(): data = article_form.cleaned_data data["author_id"] = request.user.userprofile.id article_obj = models.Article(**data) article_obj.save() # article_form.save() return HttpResponse("发帖成功!") else: return render(request, "bbs/new_article.html", { "category_list": category_list, "article_form": article_form })
def new_article(request): ''' 发帖页面,post表示提交文章,get表示返回页面 :param request: :return: ''' # 判断用户有没有登录,如果没有登录,则跳转到登陆页面 # request.user.is_authenticated # 若已经登录,那么允许发帖 if request.method == "POST": # 提交文章内容 # print(request.POST) # 图片文件在request.FILES中 article_form = form.ArticleModelForm(request.POST, request.FILES) if article_form.is_valid(): # print(article_form.cleaned_data) # article_form.cleaned_data是一个属性,不能直接更改,所以要赋给data data = article_form.cleaned_data data['author_id'] = request.user.userprofile.id article_obj = models.Article(**data) article_obj.save() # article_form.save() return HttpResponseRedirect("/bbs/") else: return render(request, "bbs/new_article.html", { "category_list": category_list, "article_form": article_form, }) # 使用modelForm来展示新建文章表单 article_form = form.ArticleModelForm() return render(request, "bbs/new_article.html", { "category_list": category_list, "article_form": article_form, })
def new_article(request): if request.method == "GET": article_form = form.ArticleModelForm() return render(request, 'bbs/new_article.html', { 'article_form': article_form, 'category_list': category_list }) elif request.method == "POST": print(request.POST) article_form = form.ArticleModelForm(request.POST, request.FILES) if article_form.is_valid(): data = article_form.cleaned_data # cleaned_data 转换成字典格式 data['author_id'] = request.user.userprofile.id article_obj = models.Article(**data) article_obj.save() article_list = models.Article.objects.filter(status='published') return HttpResponse('Published success....') # return render(request, 'bbs/index.html',{'category_list': category_list, 'articel_list': article_list}) else: return render(request, 'bbs/new_article.html', { 'article_form': article_form, 'category_list': category_list })