Здравствуйте! Есть база данных которая состоит из слов, хочу добавить возможность редактировать слова. При редактировании данные из текстовых полей отображаются на форме, но данные из чекбокса исчезают (то есть те что True не отмечаются флажком). И когда сохраняю изменения, то в базе тоже все поля чекбокса запоняются null-ом.
Models:
class test_dic2(models.Model):
cat_pol = models.BooleanField("pol", default=False, blank=True)
cat_eco = models.BooleanField("eco", default=False, blank=True)
cat_med = models.BooleanField("med", default=False, blank=True)
cat_cul = models.BooleanField("cul", default=False, blank=True)
cat_sport = models.BooleanField("sport", default=False, blank=True)
cat_all = models.BooleanField("all", default=False, blank=True)
date = models.DateTimeField(auto_now=True)
Views:
def dic_edit(request, id):
try:
d_edit = test_dic2.objects.get(id=id)
if request.method == "POST":
d_edit.cat_pol = request.POST.get("cat_pol")
d_edit.cat_eco = request.POST.get("cat_eco")
d_edit.cat_med = request.POST.get("cat_med")
d_edit.cat_cul = request.POST.get("cat_cul")
d_edit.cat_sport = request.POST.get("cat_sport")
d_edit.cat_all = request.POST.get("cat_all")
d_edit.save()
return HttpResponseRedirect("/dictionary.html")
else:
return render(request, 'app/dic_edit.html', {
"d_edit": d_edit
})
except test_dic2.DoesNotExist:
return HttpResponseNotFound("<h2>Theme not found</h2>")
Html
<tr>
<td>Категория</td>
<td> <input name="cat_pol" type="checkbox" value="{{d_edit.cat_pol}}" /> Политика
<input name="cat_eco" type="checkbox" value="{{d_edit.cat_eco}}" /> Экономика
<input name="cat_cul" type="checkbox" value="{{d_edit.cat_cul}}" /> Культура
<input name="cat_med" type="checkbox" value="{{d_edit.cat_med}}" /> Медицина
<input name="cat_sport" type="checkbox" value="{{d_edit.cat_sport}}" /> Спорт
<input name="cat_all" type="checkbox" value="{{d_edit.cat_all}}" /> Общее
</td>
</tr>