Résolue

Problème et conflit avec un formulaire et les urls wagtail

# Affichage # Django # Formulaires

Rebonjour ! J'ai créé un formulaire django dans ma page home mais j'ai un soucis, c'est que quand je mets l'url en dernier dans les url, la vue n'est pas du tout appelé et donc j'ai pas le formulaire qui s'affiche, et quand je l'ai au début, ce sont les urls wagtail qui ne foncitionnent pas et donc je n'ai pas l'affichage. Ya un conflit là vu que les deux pointent vers la chaine de caractère vide et donc le premier fonctionne... Comment faire en sorte d'avoir l'url wagtail en premier, et d'y integrer la mienne avec contact_view s'il vous plait ?

(Je précise que je souhaite que mon formulaire s'affiche egalement dans " ")

urlpatterns = [
    path('django-admin/', admin.site.urls),
    path('admin/', include("wagtail.admin.urls")),
    path('documents/', include("wagtail.documents.urls")),
    path("", include('wagtail.urls')),
    path('', contact_view, name='contact'),

]

Voici ma vue pour le formulaire :

from django.shortcuts import render, redirect
from .forms import ContactForm

def contact_view(request):
    if request.method == 'POST':
        form = ContactForm(request.POST)
        if form.is_valid():
            print(form.cleaned_data)
            form.save()

        else:
            print(form.errors)  
    else:
        form = ContactForm()  

    return render(request, 'pages/home/home.html', {'form': form})

Pour le reste, J'ai démarré d'un projet django, sur lequelle j'ai rajouté du wagtail pour rendre ça personnalisable par des éditeurs.

Du coup "hors question" on en a parlé.
Mais je te mets des liens ici qui m'ont aidé pour les forms wagtail.
Dans ton cas c'est effectivement plus adapté de faire un form wagtail comme tu veux faire au final. Plutot que de faire un form django.

Doc pour le FormBuilder : https://docs.wagtail.org/en/latest/reference/contrib/forms/

Tuto contactform qui est très bien : https://learnwagtail.com/tutorials/contact-forms/ + https://docs.wagtail.org/en/latest/tutorial/create_contact_page.html

Et surtout : https://pypi.org/project/wagtail-django-recaptcha/

Le django wagtail recaptcha qui hérite du django recaptcha ^^

Et au final tu as un suivi des contacts dans l'admin wagtail.

Salut Yanis,

merci Gab pour la réponse fournie. Yanis est ce que ça répond à ta question ? ça m'a l'air mais n'hésites pas si ce n'est pas le cas.

Inscris-toi

(c'est gratuit !)

Inscris-toi

Tu dois créer un compte pour participer aux discussions.

Créer un compte

Rechercher sur le site

Formulaire de contact

Inscris-toi à Docstring

Pour commencer ton apprentissage.

Tu as déjà un compte ? Connecte-toi.