2012-04-06 10 views

Antwort

1

Ja, können Sie benutzerdefinierte HTML für Crud Formulare verwenden, aber standardmäßig wird Crud versteckt _formname und _formkey Felder im Formular einfügen (letztere verwendet wird, gegen CSRF-Attacken zu schützen). Da Crud erwartet, dass diese Felder mit dem Formular gesendet werden, muss das Formular über Crud erstellt werden, und das Formularobjekt muss an die Ansicht übergeben werden, damit Sie diese Felder einschließen können. Details zum Erstellen von benutzerdefiniertem HTML für Formulare finden Sie unter here.

Hinweis: Um das Senden des Formulars über Ajax zu vereinfachen, können Sie das Formular in eine Ajax-Komponente über LOAD() einfügen (siehe here).

+0

Aber ich will es nicht mit benutzerdefinierten HTML zu tun. ** Ich möchte CRUD Formulare für die Client-Seite Validierung **. Oder sogar SQLFORM wird tun. Ist kein zeitsparender clientseitiger Validator verfügbar? – rahulserver

+0

Sorry, deine Frage war nicht klar. Sie haben gesagt, dass Sie mit Ajax validieren möchten (was Server-Kommunikation beinhaltet), nicht nur auf dem Client (der Ajax nicht involviert). Das Beispiel aus dem Buch, auf das Sie hingewiesen haben, führt auch keine clientseitige Validierung durch. Die kurze Antwort ist nein, die web2py-Validatoren laufen nicht auf der Client-Seite - alle Validatoren sind nur serverseitig. Die einzige clientseitige Validierung ist für Ganzzahl-, Doppel- und Dezimalfelder. Aus Sicherheitsgründen ist die reine Client-Validierung jedoch nicht unbedingt eine gute Idee - ein böswilliger Benutzer kann immer noch nicht validierte Daten posten. – Anthony

+0

Danke für Ihre Antwort. In Asp.net haben wir clientseitige Validatoren wie benutzerdefinierte Validatoren, Validierer für reguläre Ausdrücke usw. Nun, da web2py diese nicht hat, möchte ich, dass sie in zukünftige Versionen von web2py integriert werden können. Und übrigens meinte ich nicht nur den Validator des Klienten. – rahulserver