2014-01-10 16 views
14

Da meine Website aktualisieren 4 Rails, die clientseitige-Validierungen gem hat sich für mich aufgehört zu arbeiten. Ich habe mir die verschiedenen Alternativen wie jquery-validation-rails und richter angeschaut, die beinhalten ziemlich viel Javascript zu schreiben, besonders für eine so große Seite. Und im Fall von jquery-validation-rails, die alle Validierungsregeln auf der Client-Seite wiederholen. Wenn man bedenkt, dass Rails solch ein beliebter Rahmen ist, überrascht es mich, dass es keine "einfache" Option gibt. Gibt es ein Juwel, das jedem bekannt ist, das sowohl die Validierung als auch die Kunden-Validierung durchführt?Rails 4 Client-seitige Validierung

Oder ist die beste Alternative, um die ModelName.validators Methode mit einigem Ajax gemischt zu verwenden, und tut, um die Validierung durch die Jquery-Validierung-Schienen gem?

+1

Können Sie bitte posten, die Lösung gearbeitet für Sie am besten? – ksiomelo

Antwort

13

Aus dem Google.

http://rubygems.org/gems/rails4_client_side_validations

https://github.com/amatsuda/html5_validators

Auch schien dieser Typ das gleiche Juwel bekommen haben Sie mit dem 4-0-beta Zweig arbeiten verwenden.

Client Side Validations and Rails4

Wenn die 4-0-beta Zweig für Sie arbeitet, soll helfen, den Edelstein zu halten es am Leben zu halten.

Um eine bestimmte git Repo-Version in Ihrem Gemfile zu verwenden:

gem 'client-side-validations', :git => 'https://github.com/bcardarella/client_side_validations/tree/4-0-beta' 
10

Während der Client-Seite Validierungen für den einfachen Fällen funktionieren, werden sie eine enorme Menge an Abhilfen erfordern mit komplizierteren Szenarien zu arbeiten (zum Beispiel - bedingte Validierungen. Ich würde stattdessen Judge empfehlen, die Ihnen mehr Kontrolle geben.

+0

Netter Link, vielen Dank. Und es ist auch kompatibel mit 'simple_form'. : D – Vadorequest

+0

@Vadorequest client_side_validations erfordert keine große Menge an Umgehungen für bedingte Prüfungen. Siehe meine Lösung hier: http://stackoverflow.com/questions/22906257/client-side-validation-is-not-working-while-applying-conditional-validation-in-r/22943098#22943098 Könnten Sie weitere Informationen zur Verfügung stellen zu Wie behandelt Judge bedingte Validierungen? Ich habe mir die Dokumentation angeschaut und sehe keine Erwähnung, also frage ich mich, was der Vorteil ist, wenn es um bedingte Validierungen geht. –

+0

Wenn die Bedingung für die Validierung auf der Client-Seite entschieden wird. Wie ich bereits sagte - für die einfachen Fälle client_side_validations vielleicht in Ordnung, aber für die komplizierter, wenn es einige Geschäftslogik auf der Client-Seite gibt (und die Welt geht in diese Richtung), dann wird es ziemlich schwer zu handhaben. – Roman

2

konnte ich eine Gabel der ursprünglichen client_side_vlaidations verwenden, die im Moment sehr aktiv ist. Ich verwende die neueste Version von Simple_form, Schienen 4.1.8, und diese client_side_validations. Einfaches Setup mit Grundkonfiguration.

0

Ich weiß, die Frage ist alt, aber wie wäre es gute alte erfordern: „require“?

Zum Beispiel im Blick:

<%= f.text_area :body, placeholder: "Write your review here...", class: "form-control", rows: "5", required: "required" %> 
+0

Beachten Sie, dass die HTML5-Anforderung in Safari nicht funktioniert. – user2031423

+0

omfg ... Sie haben Recht. Warum ist das so? – Boomerange

Verwandte Themen