2010-04-09 25 views
9

Utilizzo il sistema di convalida jQuery per la convalida sul lato client. Il back-end funziona con Django. jQuery usa un'interessante serie di regole in formato JSON.Come utilizzare le regole di convalida sia sul lato client che sul lato server?

non esiste qualcosa da usare le stesse regole sul lato Django o ho bisogno di codice da solo?

+0

Il mondo ha bisogno di una sorta di markup di convalida in grado di eseguire sia lato client che server. I motori scritti per ciascun ambiente elaborerebbero la convalida. Un po 'come uno schema xml, suppongo. –

risposta

2

No, non esiste nulla di simile.

Sì, è necessario il codice da soli.

Tuttavia, immagino che si potrebbe creare widget che sono in grado di fornire routine di convalida generico js in base alla modelFields. Ad esempio "Questo dovrebbe essere un carattere non più di max_length". Tuttavia, non potevano generare in modo banale codice lato client per convalidare qualsiasi convalida personalizzata scritta in python, né nemmeno qualcosa come "Questo deve essere il nome utente di un utente esistente". Ma se si prende questa briga di costruire i widget che fanno la convalida di base sulla base dei modelFields si prega di contribuire loro di aprire fonte :-D

+0

È già per un progetto open source quindi lo sarà comunque :) Ovviamente questo potrebbe essere valido solo per operazioni che devono essere duplicate, ad esempio convalida della data, o conferma della conferma della password e cose del genere ... Se coinvolge database coinvolgerà il server e alcuni ajax per la validazione dei client. –

2

Questo articolo descrive un certo livello di integrazione: http://streamhacker.com/2010/03/08/jquery-validation-django-forms/

Non sembra come se fosse in realtà genera i metadati del client basati sui metadati serveride, ma almeno mette tutte le regole in un unico posto. Può essere un buon punto di partenza per generare quelle regole basate sulle regole Django esistenti.

Problemi correlati