Django上的实例不工作,图片字段除外
您知道为什么Django实例在我下面的代码中不能正常工作吗?这个想法是允许用户编辑他们的文章(在我的代码中称为seed),这样做对他们访问当前文章中的数据更方便。但出于某种原因,表单保持为空,图片字段除外,无论发生什么情况。所以我想知道我的代码是否有部分取消了这个实例。谢谢你的帮助 views.pyDjango上的实例不工作,图片字段除外,django,forms,instance,Django,Forms,Instance,您知道为什么Django实例在我下面的代码中不能正常工作吗?这个想法是允许用户编辑他们的文章(在我的代码中称为seed),这样做对他们访问当前文章中的数据更方便。但出于某种原因,表单保持为空,图片字段除外,无论发生什么情况。所以我想知道我的代码是否有部分取消了这个实例。谢谢你的帮助 views.py def seed_edit(request, slug): to_edit_seed = Seed.objects.get(slug=slug) if to_edit_seed.us
def seed_edit(request, slug):
to_edit_seed = Seed.objects.get(slug=slug)
if to_edit_seed.user.id != request.user.id:
return render(request, 'dist/inside/knowledge/404_not_allowed.html')
else:
if request.method == 'POST':
seed_form_edit = SeedForm(request.POST, request.FILES, instance=to_edit_seed)
seed_vc_edit = SeedFormVC(request.POST)
if seed_form_edit.is_valid() and seed_vc_edit.is_valid():
seed = seed_form_edit.save(commit=False)
seed.save()
seed_form_edit.save_m2m()
if Value_Chain_Seed.objects.filter(seed_id=to_edit_seed.id).exists():
f = Value_Chain_Seed.objects.filter(seed_id=to_edit_seed.id)
f.delete()
seed_vc_edit.instance.seed = to_edit_seed
seed_vc_edit.save()
else:
seed_vc_edit.instance.seed = to_edit_seed
seed_vc_edit.save()
messages.success(request,'Your seed was successfully updated!')
return redirect(reverse(("knowledge:one_seed"),args=[to_edit_seed.slug]))
else:
seed_form_edit = SeedForm(request.POST, request.FILES, instance=to_edit_seed)
seed_vc_edit = SeedFormVC(request.POST)
else:
seed_form_edit = SeedForm(request.POST, request.FILES, instance=to_edit_seed)
seed_vc_edit = SeedFormVC(request.POST)
return render(request, 'dist/inside/knowledge/seed/edit_seed.html', {
'to_edit_seed': to_edit_seed,
'seed_form_edit': seed_form_edit,
'seed_vc_edit': seed_vc_edit,
})
form.py
class SeedForm(forms.ModelForm):
sdg = forms.ModelMultipleChoiceField(
queryset=SDG.objects.all().exclude(id=18),
widget=forms.CheckboxSelectMultiple,
)
industry = forms.ModelMultipleChoiceField(
queryset=Industry.objects.all().exclude(id=10),
widget=forms.CheckboxSelectMultiple,
)
class Meta:
model = Seed
fields = ["title", "profile_seed","aim_seed", "keywords"]
模板
<div class="row mx-n2">
<form method="post" class="post-form" enctype="multipart/form-data">
{% csrf_token %}
<h5>Title - {{ seed_form_edit.title }}</h5>
<h5>VC - {{ seed_vc_edit.title }}</h5>
<hr>
<span><h6>Briefly summarize your seed<br><br>{{ seed_form_edit.summary }}</h6></span>
<span><h6>What is the aim of your seed?<br><br>{{ seed_form_edit.aim_seed }}</h6></span>
<span><h6>Provide maximum 4 keywords related to your seed.
Please, seperate each keyword using a coma.<br><br>{{ seed_form_edit.keywords }}</h6></span>
<hr>
<h4>Would you like to add a picture ? </h4>
{{ seed_form_edit.profile_seed }}
<br>
<button type="submit" class="btn btn-dark">Done</button>
</form>
</div>
{%csrf_令牌%}
标题-{seed\u form\u edit.Title}
VC-{seed_VC_edit.title}
简要总结您的种子
{{seed\u form\u edit.summary}
你的种子的目标是什么?
{{seed\u form\u edit.aim\u seed}
最多提供4个与种子相关的关键字。
请用逗号分隔每个关键字。
{{{seed\u form\u edit.keywords}
您想添加一张图片吗?
{{seed\u form\u edit.profile\u seed}
多恩
好吧,这么久之后,我终于明白了哪里出了问题,在“else”部分,我不应该添加request.Post或request.File,因为这样会停止加载文章。。。。所以是的