问题
I have this code in my template:
{% for email in emails %}
{%if email%}
<input type="checkbox" name="email" value="{{email}}" /> {{email}}<br />
{% endif %}
{% endfor %}
so the output in the template is:
email1@sample.com
email2@sample.com
email3@sample.com
...
in my views I printed my request.POST about this.
print request.POST
print request.POST['email']
for email in request.POST['email']:
print email
i got this output:
<QueryDict: {u'email': [u'email1@sample.com', u'email2@sample.com', u'email3@sample.com'], ..., u'csrfmiddlewaretoken': [u'05e5bdb542c3be7515b87e8160c347a0', u'05e5bdb542c3be7515b87e8160c347a0']}>
email3@sample.com
e
m
a
i
l
3
@
s
a
m
p
l
e
.
c
o
m
my question is, how can I get the list of emails in my views? I wanted the output will be like this..
email1@sample.com
email2@sample.com
email3@sample.com
...
回答1:
Use request.POST.getlist:
Returns the data with the requested key, as a Python list. Returns an empty list if the key doesn’t exist and no default value was provided. It’s guaranteed to return a list of some sort unless the default value provided is not a list.
来源:https://stackoverflow.com/questions/10276753/get-the-list-of-checkbox-post-in-django-views