Wagtail - Formulir referensi dari halaman anak

Saya menggunakan Pembuat Formulir Wagtail sehingga pelaksana situs dapat memperluas untuk membuat tipe FormPage mereka sendiri dengan templat khusus situs mereka sendiri.

Saya ingin merender semua halaman formulir di halaman induk; ini mencakup semua bidang halaman anak, seperti judul, serta formulir anak lengkap.

Idealnya, tombol kirim juga harus bertindak berdasarkan kinerja.

Inilah yang saya coba:

<ul>
    {% for child in page.get_children %}
    <li>

        <h5 class=>{{ child.specific.title }}</h5>

        <div>

            {{ child.specific.intro|richtext }}

            <div id="form-holder">

                <form action="{% child.pageurl page %}" method="POST">
                    {% csrf_token %}
                    {{ child.specific.form.as_p }}
                    <input type="submit">
                </form>

            </div><!-- contact-form-holder-->

        </div>
    </li>
    {% endfor %}
</ul>

Model formulir saya kurang lebih sesuai dengan Pembuat Formulir dokumentasi dengan beberapa bidang tambahan:

class FormField(AbstractFormField):
    db_table = 'form_field'

    page = ParentalKey('FormPage', related_name='form_fields')


class FormPage(AbstractEmailForm):
    db_table = 'form_page'

    header = models.CharField(max_length=250)
    intro = RichTextField(blank=True)
    thank_you_text = RichTextField(blank=True)

    content_panels = AbstractEmailForm.content_panels + [
        FormSubmissionsPanel(),
        FieldPanel('intro', classname="full"),
        FieldPanel('header'),
        InlinePanel('form_fields', label="Form fields"),
        FieldPanel('thank_you_text', classname="full"),
        MultiFieldPanel([
            FieldRowPanel([
                FieldPanel('from_address', classname="col6"),
                FieldPanel('to_address', classname="col6"),
            ]),
            FieldPanel('subject'),
        ], "Email"),
    ]

Saya menemukan bahwa saya dapat merender bidang halaman anak seperti judul dan intro jika saya menggunakan metode .specific.

Namun, sepertinya saya tidak bisa mendapatkan formulir apa pun untuk dirender; dengan atau tanpa tag .specific.

Bantuan apa pun akan sangat diterima!


person Karim Tabet    schedule 07.02.2017    source sumber
comment
Sekarang ada jawaban untuk pertanyaan yang sangat mirip di sini: stackoverflow.com/questions/42673180/   -  person LB Ben Johnston    schedule 15.11.2017


Jawaban (1)


Di luar topik tetapi mungkin bisa membantu:

{% untuk anak di page.get_children %}

dapat diganti dengan:

{% untuk anak di page.get_children.special %}

person Robert    schedule 08.02.2017