Надеюсь, вы увидите, что я пытаюсь сделать здесь, просто хочу перебрать значения, отправленные для группы, которые выглядят как group = 1,3,5 и т. Д. и добавить их в базу данных. group - это флажок. Поэтому я хотел использовать параметр split. Я получаю следующее сообщение Тхо ....Объект Django 'QuerySet' не имеет атрибута 'split'
объект «QuerySet» не имеет атрибута «разбить»
Так что мое понимание того, что в INIT я использую для заполнения формы, которая является запросом, и мне это нужно, но на почте это должен быть просто список. что я делаю неправильно?
view.py
form = BatchForm(request.user, request.POST)
# Check we have valid data before saving trying to save.
if form.is_valid():
# Clean all data and add to var data.
data = form.cleaned_data
groups = data['group'].split(",")
for item in form.cleaned_data['group']:
batch = Batch(content=data['content'],
group=Group.objects.get(pk=item),
user=request.user
)
batch.save()
forms.py
class BatchForm(forms.ModelForm):
class Meta:
model = Batch
exclude = ('user', 'group')
def __init__(self, user=None, *args, **kwargs):
super(BatchForm, self).__init__(*args,**kwargs)
if user is not None:
form_choices = Group.objects.for_user(user)
else:
form_choices = Group.objects.all()
self.fields['group'] = forms.ModelMultipleChoiceField(
queryset=form_choices
)
template.py
{% for value, text in form.group.field.choices %}
<input type="checkbox" name="group" value="{{ value }}" /> {{text}}<br />
{% endfor %}