15

Since upgrading my site to Rails 4, the client-side-validations gem has stopped working for me. I have had a look at the various alternatives such as jquery-validation-rails and judge, which involve writing quite a bit of javascript, especially for a site so large. And in the case of jquery-validation-rails, re-doing all the validation rules client side. Considering Rails is such a popular framework, it surprises me that there is no 'easy' option. Is there any gem which anyone else is aware of, which does validation as well as the client-side-validation gem?

Or is the best alternative to use the ModelName.validators method mixed with some ajax, and do the validation through the jquery-validation-rails gem?

1
  • 1
    Can you please post which solution worked best for you? Commented Jan 12, 2014 at 12:54

5 Answers 5

13

From the Google.

http://rubygems.org/gems/rails4_client_side_validations

https://github.com/amatsuda/html5_validators

Also this guy seemed to have gotten the same gem you are using to work by using the 4-0-beta branch.

Client Side Validations and Rails4

If the 4-0-beta branch works for you, consider helping to maintain the gem to keep it alive.

To use a certain git repo version in your Gemfile:

gem 'client-side-validations', :git => 'https://github.com/bcardarella/client_side_validations/tree/4-0-beta'
Sign up to request clarification or add additional context in comments.

Comments

10

While the client side validations will work for the simple cases, they'll require an enormous amount of workarounds to work with more complicated scenarios (for instance - conditional validations). I would recommend using Judge instead, which give you more control.

6 Comments

Nice link, thanks a lot. And it's compatible with simple_form too. :D
@Vadorequest client_side_validations does not require an enormous amount of workaround for conditional validations. See my solution here: stackoverflow.com/questions/22906257/… Could you provide more details about how Judge handles conditional validations? I have looked at the documentation and see no mention of it, so I wonder what the advantage is when it comes to conditional validations.
When the condition for validation is decided on the client side. As I said before - for the simple cases client_side_validations maybe fine, but for the more complicated, when there's quite a few business logic on the client side (and the world is going this direction), then it becomes pretty hard to handle.
Another important pooint is that client_side_validations isn't maintained anymore and is not a great gem since its changes some stuff in the server side and isn't compatible with judge for instance.
Judge does not appear to be maintained anymore. Guess we have to do this sort of thing ourselves then.
|
2

I was able to use a fork of the original client_side_vlaidations that is very active at the moment. I am using the latest version of simple_form, rails 4.1.8, and this client_side_validations. Simple setup with basic config.

Comments

0

I know the question is old, but how about good old require: "require"?

For example in view:

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

Comments

-1

If you are using Bootstrap Form for Rails, you can give bootstrap_validator_rails a try.

https://github.com/huynhquancam/bootstrap_validator_rails

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.