如何在 Django 中使用香脆形式的 Django 欧芹?

How to use Django parsley with crispy form in Django?

我是Django crispy form和Django parsley的初学者,我想知道如何在form标签中添加data-validate = 'parsley'。

<form data-parsley-validate>
    {{ form.as_p }}
</form>

我的 form.py 由以下组成 code.I 我使用的是脆皮形式。

def __init__(self, *args, **kwargs):
        '''
            Describes how to render the form in the template.
        '''
        super(StudentForm, self).__init__(*args, **kwargs)
        # This is to handle department permissions for department
        self.fields['department'].queryset = Department.objects.all()
        # This is to handle department level permissions for batches
        self.fields['batch'].queryset = Batches.objects.all()
        self.helper = FormHelper(self)
        self.helper.form_id = 'add_student_details'
        self.helper.form_class = 'ajax-student-create-form'
        self.helper.form_method = 'post'
        self.helper.form_action = 'students_add_new_student'
        #self.helper.attrs = {'data-parsley-validate'}
        self.helper.html5_required = True

我需要的表单标签应该是这样的,

<form data-validate="parsley" method="post">
</form>

引用 crispy FormHelper docs:

attrs

Added in 1.2.0, a dictionary to set any kind of form attributes. Underscores in keys are translated into hyphens. The recommended way when you need to set several form attributes in order to keep your helper tidy:

{'id': 'form-id', 'data_id': '/whatever'}

<form id="form-id" data-id="/whatever" ...>

在你应该是代码:

    self.helper = FormHelper(self)
    self.helper.attrs = {'data-validate':'parsley'}