PROBLEMA Validare una form usando django ma chiamarla con javascript

Pubblicità

fabio_1

Utente Attivo
Messaggi
244
Reazioni
8
Punteggio
43
Sto usando una model form di django.
Da ciò che ho capito django riesce a validare una form in modo piuttosto sicuro, ovvero controlla i dati immessi impedendo agli hacker di mandare i loro codici malevoli.
In genere quindi per fare ciò nel template html uso:
Codice:
<form action="/url/to/my/view">...</form>

e poi nella view uso:

Codice:
if myform.is_valid():

is_valid() è il comando che provvede a validare la form. Chiedo conferma che dia una certa sicurezza.

Questa volta però la mia form non ha una action e il bottone submit farebbe partire direttamente una funzione javascript, la quale poi chiamerebbe una django view tramite ajax.
Spero sia chiaro, non è nulla di strano.

Il problema è che tramite javascript non so come fare a validare la mia form. Non conosco un comando apposito e scrivere una funzione che lo faccia non saprei da che parte farmi. Il problema non è controllare cose banali come valori massimi o minimi, campi richiesti e simili ma proteggermi dagli hacker quindi serve qualcosa di serio.
Immagino ci sia qualche soluzione standard, possibile che non ci abbiano pensato?

Pensavo a questa soluzione ma non so neanche se abbia senso:
quando chiamo la view tramite Ajax potrei inviare i dati della form e fare una cosa del genere:
Codice:
form = MyForm(field1=myvalue1, field2=myvalue2, etc)
if form.is_valid():
    ...

Può funzionare?
In genere i dati (myvalue1, myvalue2, etc) si trovano nella request.POST che è una specie di dizionario. In questo caso invece li dovrei dare io uno ad uno (tipo nel codice sopra), giusto?

Spero sia tutto chiaro, grazie per le risposte
 
Pubblicità
Pubblicità
Indietro
Top