コード例 #1
0
 def __iter__(self):
     for i, field in enumerate(self.fields):
         if field in self.readonly_fields:
             yield AdminReadonlyField(self.form, field, is_first=(i == 0),
                 model_admin=self.model_admin)
         else:
             yield AdminField(self.form, field, is_first=(i == 0))
コード例 #2
0
    def test_init_with_checkbox(self):
        """Testing ChangeFormField.__init__ with checkbox"""
        row = ChangeFormRow(self.form, field='is_active')
        field = ChangeFormField(form_row=row,
                                admin_field=AdminField(self.form,
                                                       field='is_active',
                                                       is_first=True))

        self.assertEqual(field.classes, 'rb-c-form-field -has-input-first')
        self.assertTrue(field.has_field_first)
        self.assertTrue(field.is_checkbox)
コード例 #3
0
    def test_render(self):
        """Testing ChangeFormField.render"""
        row = ChangeFormRow(self.form, field='is_active')
        field = ChangeFormField(form_row=row,
                                admin_field=AdminField(self.form,
                                                       field='is_active',
                                                       is_first=True))
        html = field.render()

        self.assertIsInstance(html, SafeText)
        self.assertHTMLEqual(
            html, '<input id="id_is_active" name="is_active" type="checkbox"'
            ' checked>')
コード例 #4
0
    def test_label_tag_with_checkbox_field(self):
        """Testing ChangeFormField.label_tag with checkbox field"""
        row = ChangeFormRow(self.form, field='is_active')
        field = ChangeFormField(form_row=row,
                                admin_field=AdminField(self.form,
                                                       field='is_active',
                                                       is_first=True))
        html = field.label_tag()

        self.assertIsInstance(html, SafeText)
        self.assertHTMLEqual(
            html, '<label class="rb-c-form-field__label" for="id_is_active">'
            'Active</label>')
コード例 #5
0
    def test_label_tag(self):
        """Testing ChangeFormField.label_tag"""
        row = ChangeFormRow(self.form, field='username')
        field = ChangeFormField(form_row=row,
                                admin_field=AdminField(self.form,
                                                       field='username',
                                                       is_first=True))
        html = field.label_tag()

        self.assertIsInstance(html, SafeText)
        self.assertHTMLEqual(
            html, '<label class="rb-c-form-field__label"'
            ' for="id_username">Username:</label>')
コード例 #6
0
    def test_init(self):
        """Testing ChangeFormField.__init__"""
        row = ChangeFormRow(self.form, field='username')
        field = ChangeFormField(form_row=row,
                                admin_field=AdminField(self.form,
                                                       field='username',
                                                       is_first=True))

        self.assertEqual(field.classes, 'rb-c-form-field -is-required')
        self.assertTrue(field.is_first)
        self.assertFalse(field.has_field_first)
        self.assertFalse(field.is_checkbox)
        self.assertFalse(field.is_readonly)
        self.assertFalse(field.show_errors)
コード例 #7
0
    def test_init_with_errors(self):
        """Testing ChangeFormField.__init__ with errors"""
        self.form.errors['username'] = self.form.error_class(['Stuff bad'])
        row = ChangeFormRow(self.form, field='username')
        field = ChangeFormField(form_row=row,
                                admin_field=AdminField(self.form,
                                                       field='username',
                                                       is_first=True))

        self.assertEqual(field.classes,
                         'rb-c-form-field -is-required -has-errors')
        self.assertTrue(field.show_errors)
        self.assertHTMLEqual(field.errors,
                             '<ul class="errorlist"><li>Stuff bad</li></ul>')
コード例 #8
0
    def test_init_with_multi_choice(self):
        """Testing ChangeFormField.__init__ with ModelMultipleChoiceField"""
        class MyForm(forms.Form):
            field = forms.ModelMultipleChoiceField(
                queryset=ReviewRequest.objects.all(), required=False)

        form = MyForm()
        row = ChangeFormRow(form, field='field')
        field = ChangeFormField(form_row=row,
                                admin_field=AdminField(form,
                                                       field='field',
                                                       is_first=True))

        self.assertEqual(field.classes, 'rb-c-form-field')
        self.assertIsInstance(form.fields['field'].widget,
                              FilteredSelectMultiple)
コード例 #9
0
 def polymorphic_ctype_field(self):
     return AdminField(self.form, 'polymorphic_ctype', False)
コード例 #10
0
 def __iter__(self):
     for i, field in enumerate(self.fields):
         yield AdminField(self, field, is_first=(i == 0))