问题描述
我正在尝试构建Blog,对于我的标记系统,我认为使用django-taggit会很棒,但是当我想更新BlogPost时出现问题
tag1,tag2,tag3
这就是我尝试更新Blog Post时的样子:
[<Tag: tag1>,<Tag: tag2>,<Tag: tag3>]
blog / forms.py
from django import forms
from .models import BlogPost,Category
class BlogPostForm(forms.Form):
title = forms.CharField()
# slug = forms.SlugField()
content = forms.CharField(widget=forms.Textarea)
# class BlogPostModelForm(forms.ModelForm):
choices = Category.objects.all().values_list('name','name')
choice_list = []
for item in choices:
choice_list.append(item)
class BlogPostForm(forms.ModelForm):
class Meta:
model = BlogPost
fields = ['title','category','content','publish_date','image','private','tags']
widgets ={
'title': forms.TextInput(attrs={'class': 'form-control'}),'category': forms.Select(choices=choice_list,attrs={'class': 'form-control'}),# 'slug': forms.TextInput(attrs={'class': 'form-control'}),'content': forms.Textarea(attrs={'class': 'form-control'}),'publish_date': forms.TextInput(attrs={'class': 'form-control'}),'image': forms.FileInput(attrs={'class': 'form-control-file'}),'private': forms.CheckBoxInput(attrs={'class': 'form-check-label'}),'tags': forms.TextInput(attrs={'class': 'form-control'}),}
blog / views.py
- update_view
@login_required(login_url='login')
def blog_post_update_view(request,slug):
obj = get_object_or_404(BlogPost,slug=slug)
form = BlogPostForm(request.POST or None,instance=obj)
if form.is_valid():
form.save(commit=False)
form.save_m2m()
return redirect('/blog')
template_name = 'form.html'
context = {"title": f"Update {obj.title}","form": form}
return render(request,template_name,context)
谁能解释我该如何解决?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)