21👍
The simplest way is to specify the values as a list
or tuple
in the dict
:
client.post('/foo', data={"key": ["value1", "value2"]})
Alternatively you can use a MultiValueDict
as the value.
5👍
Just ran into this issue! Unfortunately, your answer did not work for me, In the FormView
I was posting to it would only pull out one of the values included, not all of the values
You should also be able to build a querystring manually and post it using content type x-www-form-urlencoded
some_str = 'key=value1&key=value2&test=test&key=value3'
client.post('/foo/', some_str, content_type='application/x-www-form-urlencoded')
2👍
from django.core.urlresolvers import reverse
from django.utils.datastructures import MultiValueDict
from django.utils.http import urlencode
form_data = {'username': 'user name',
'address': 'street',
'allowed_hosts': ["host1", "host2"]
}
response = client.post(reverse('new_user'),
urlencode(MultiValueDict(form_data), doseq=True),
content_type='application/x-www-form-urlencoded')
- Django-storages with Amazon S3 – prevent overwriting
- How do I restrict access to admin pages in Django?
- How to use a localized "short format" when formatting dates in Django?
- How do I extend the Django "login" form?
Source:stackexchange.com