def render_layout(self, form, context, template_pack=TEMPLATE_PACK):
        """
        Returns safe html of the rendering of the layout
        """
        form.rendered_fields = set()
        form.crispy_field_template = self.field_template

        # This renders the specified Layout strictly
        html = self.layout.render(form,
                                  self.form_style,
                                  context,
                                  template_pack=template_pack)

        # Rendering some extra fields if specified
        if self.render_unmentioned_fields or self.render_hidden_fields or self.render_required_fields:
            fields = tuple(form.fields.keys())
            left_fields_to_render = list_difference(fields,
                                                    form.rendered_fields)
            for field in left_fields_to_render:
                if (self.render_unmentioned_fields
                        or (self.render_hidden_fields
                            and form.fields[field].widget.is_hidden)
                        or (self.render_required_fields
                            and form.fields[field].widget.is_required)):
                    html += render_field(field,
                                         form,
                                         self.form_style,
                                         context,
                                         template_pack=template_pack)

        return mark_safe(html)
    def render_layout(self, form, context, template_pack=TEMPLATE_PACK):
        """
        Returns safe html of the rendering of the layout
        """

        form.rendered_fields = set()
        form.crispy_field_template = self.field_template

        # This renders the specified Layout strictly
        html = self.layout.render(
            form,
            self.form_style,
            context,
            template_pack=template_pack
        )

        # Rendering some extra fields if specified
        if self.render_unmentioned_fields or self.render_hidden_fields or self.render_required_fields:
            fields = set(form.fields.keys())
            left_fields_to_render = fields - form.rendered_fields
            for field in left_fields_to_render:
                if (
                    self.render_unmentioned_fields or
                    self.render_hidden_fields and form.fields[field].widget.is_hidden or
                    self.render_required_fields and form.fields[field].widget.is_required
                ):
                    html += render_field(
                        field,
                        form,
                        self.form_style,
                        context,
                        template_pack=template_pack
                    )

        # If the user has Meta.fields defined, not included in the layout,
        # we suppose they need to be rendered
        if hasattr(form, 'Meta'):
            if hasattr(form.Meta, 'fields'):
                current_fields = tuple(getattr(form, 'fields', {}).keys())

                meta_fields = getattr(form.Meta, 'fields')

                fields_to_render = list_intersection(current_fields, meta_fields)
                left_fields_to_render = list_difference(fields_to_render, form.rendered_fields)

                for field in left_fields_to_render:
                    # We still respect the configuration of the helper
                    # regarding which fields to render
                    if (
                        self.render_unmentioned_fields or
                        (self.render_hidden_fields and
                         form.fields[field].widget.is_hidden) or
                        (self.render_required_fields and
                         form.fields[field].widget.is_required)
                    ):

                        html += render_field(field, form, self.form_style, context)


        return mark_safe(html)
    def render_layout(self, form, context, template_pack=TEMPLATE_PACK):
        """
        Returns safe html of the rendering of the layout
        """
        form.rendered_fields = set()
        form.crispy_field_template = self.field_template

        # This renders the specified Layout strictly
        html = self.layout.render(
            form,
            self.form_style,
            context,
            template_pack=template_pack
        )

        # Rendering some extra fields if specified
        if self.render_unmentioned_fields or self.render_hidden_fields or self.render_required_fields:
            fields = set(form.fields.keys())
            left_fields_to_render = fields - form.rendered_fields
            for field in left_fields_to_render:
                if (
                    self.render_unmentioned_fields or
                    self.render_hidden_fields and form.fields[field].widget.is_hidden or
                    self.render_required_fields and form.fields[field].widget.is_required
                ):
                    html += render_field(
                        field,
                        form,
                        self.form_style,
                        context,
                        template_pack=template_pack
                    )

        # If the user has Meta.fields defined, not included in the layout,
        # we suppose they need to be rendered
        if hasattr(form, 'Meta'):
            if hasattr(form.Meta, 'fields'):
                current_fields = tuple(getattr(form, 'fields', {}).keys())
                meta_fields = getattr(form.Meta, 'fields')

                fields_to_render = list_intersection(current_fields, meta_fields)
                left_fields_to_render = list_difference(fields_to_render, form.rendered_fields)

                for field in left_fields_to_render:
                    # We still respect the configuration of the helper
                    # regarding which fields to render
                    if (
                        self.render_unmentioned_fields or
                        (self.render_hidden_fields and
                         form.fields[field].widget.is_hidden) or
                        (self.render_required_fields and
                         form.fields[field].widget.is_required)
                    ):
                        html += render_field(field, form, self.form_style, context)

        return mark_safe(html)
def test_list_set_operations():
    list1 = ["3", "1", "4", "3"]
    list2 = ["2"]
    list3 = ["1", "6"]
    list4 = []
    union = list_union(list1, list2, list3, list4)
    assert union == ["3", "1", "4", "2", "6"]
    list5 = ["1", "3"]
    list6 = ["2", "3"]
    difference = list_difference(list5, list6)
    assert difference == ["1"]
def test_list_set_operations():
    list1 = ['3', '1', '4', '3']
    list2 = ['2']
    list3 = ['1', '6']
    list4 = []
    union = list_union(list1, list2, list3, list4)
    assert union == ['3', '1', '4', '2', '6']
    list5 = ['1', '3']
    list6 = ['2', '3']
    difference = list_difference(list5, list6)
    assert difference == ['1']
Exemple #6
0
def test_list_set_operations():
    list1 = ['3', '1', '4', '3']
    list2 = ['2']
    list3 = ['1', '6']
    list4 = []
    union = list_union(list1, list2, list3, list4)
    assert union == ['3', '1', '4', '2', '6']
    list5 = ['1', '3']
    list6 = ['2', '3']
    difference = list_difference(list5, list6)
    assert difference == ['1']
Exemple #7
0
def test_list_difference():
    assert list_difference([3, 1, 2, 3], [4, 1, ]) == [3, 2]