Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How do I validate a non-model form in Rails 3?

Let's say I have a search form and I want to validate the length of the keyword. I want the form to highlight the invalid field (like model forms). I've looked everywhere and can't seem to find any useful information on validating non-model-backed forms in Rails 3. I've tried the validatable gem, but this doesn't seem to work with Rails 3:

undefined method `model_name' for Login:Class.

Any ideas?

like image 717
Mike Avatar asked Feb 25 '11 14:02

Mike


2 Answers

With Rails 3 you can extend "plain old Ruby objects" with some ActiveModel extensions like Validations etc. ActiveRecord is extension of ActiveModel with DB support. Here is a very good Railscast describing it with easy example:

In Rails 3 the non-database functionality of Active Record is extracted out into Active Model. This allows you to cleanly add validations and other features to tableless models. http://railscasts.com/episodes/219-active-model

like image 187
gertas Avatar answered Oct 27 '22 08:10

gertas


You can try to use tableless model. Check out here for more infomation: http://railscasts.com/episodes/193-tableless-model

like image 32
fl00r Avatar answered Oct 27 '22 10:10

fl00r