mirror of
https://github.com/django/django.git
synced 2025-10-24 06:06:09 +00:00
Fixed #27993 -- Fixed model form default fallback for SelectMultiple.
This commit is contained in:
@@ -614,6 +614,22 @@ class ModelFormBaseTest(TestCase):
|
||||
self.assertEqual(m1.mode, '')
|
||||
self.assertEqual(m1._meta.get_field('mode').get_default(), 'di')
|
||||
|
||||
def test_default_not_populated_on_selectmultiple(self):
|
||||
class PubForm(forms.ModelForm):
|
||||
mode = forms.CharField(required=False, widget=forms.SelectMultiple)
|
||||
|
||||
class Meta:
|
||||
model = PublicationDefaults
|
||||
fields = ('mode',)
|
||||
|
||||
# Empty data doesn't use the model default because an unselected
|
||||
# SelectMultiple doesn't have a value in HTML form submission.
|
||||
mf1 = PubForm({})
|
||||
self.assertEqual(mf1.errors, {})
|
||||
m1 = mf1.save(commit=False)
|
||||
self.assertEqual(m1.mode, '')
|
||||
self.assertEqual(m1._meta.get_field('mode').get_default(), 'di')
|
||||
|
||||
def test_prefixed_form_with_default_field(self):
|
||||
class PubForm(forms.ModelForm):
|
||||
prefix = 'form-prefix'
|
||||
|
||||
Reference in New Issue
Block a user