Problème et conflit avec un formulaire et les urls wagtail
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.
Inscris-toi
(c'est gratuit !)
Tu dois créer un compte pour participer aux discussions.
Créer un compte