# Not Active Record Model Validation

**URL:** <https://www.ruby-forum.com/t/not-active-record-model-validation/96216>\
**Category:** Rails\
**Created:** [June 27, 2006, 12:21pm UTC](https://www.ruby-forum.com/t/not-active-record-model-validation/96216 "2006-06-27T12:21:12Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![Budi\_Irawan](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/b/a9adbd/32.png) [@Budi\_Irawan](https://www.ruby-forum.com/u/Budi_Irawan)\
**Post date:** [June 27, 2006, 12:21pm UTC](https://www.ruby-forum.com/t/not-active-record-model-validation/96216/1 "2006-06-27T12:21:12Z")

</div>

I have a problem with ruby on rails validation

# total\_book\_toy.rhtml

\<%= text\_field ‘book1’, ‘title1’ %\>  
\<%= text\_field ‘book2’, ‘title2’ %\>

I want to validate these text\_field so user can’t insert same title.  
However, I was stuck how to do it.  
Or maybe you have another way how to do it.

Any suggestion, please?

Thank you so much.

---

<div class="post-metadata">

**Author:** ![Budi\_Irawan](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/b/a9adbd/32.png) [@Budi\_Irawan](https://www.ruby-forum.com/u/Budi_Irawan)\
**Post date:** [June 27, 2006, 12:45pm UTC](https://www.ruby-forum.com/t/not-active-record-model-validation/96216/2 "2006-06-27T12:45:56Z")

</div>

Use validates\_uniqueness\_of in the model.  
[http://api.rubyonrails.org/classes/ActiveRecord/Validations/ClassMethods.html#M000816](http://api.rubyonrails.org/classes/ActiveRecord/Validations/ClassMethods.html#M000816)

If you need more control just define your own validate method.

-Jonathan

---

<div class="post-metadata">

**Author:** ![Budi\_Irawan](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/b/a9adbd/32.png) [@Budi\_Irawan](https://www.ruby-forum.com/u/Budi_Irawan)\
**Post date:** [July 12, 2006, 11:56am UTC](https://www.ruby-forum.com/t/not-active-record-model-validation/96216/3 "2006-07-12T11:56:52Z")

</div>

Hmm…but these text\_field are not related with active record and  
database  
so we can’t use active record validation with its error\_messages, can  
we?

in other words, I have not them in my database.

Pls, help me.

---

<div class="post-metadata">

**Author:** ![Budi\_Irawan](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/b/a9adbd/32.png) [@Budi\_Irawan](https://www.ruby-forum.com/u/Budi_Irawan)\
**Post date:** [July 12, 2006, 12:55pm UTC](https://www.ruby-forum.com/t/not-active-record-model-validation/96216/4 "2006-07-12T12:55:40Z")

</div>

Either create a table and just don’t save the object, or use a  
tableless model. Here’s an example:

class Contact \< ActiveRecord::Base  
def self.columns() @columns ||= []; end  
def self.column(name, sql\_type = nil, default = nil, null = true)  
columns \<\< ActiveRecord::ConnectionAdapters::Column.new(name.to\_s,  
default, sql\_type.to\_s, null)  
end

column :name, :string  
column :email\_address, :string  
column :message, :string

validates\_presence\_of :name, :email\_address  
end

-Jonathan.

---

<div class="post-metadata">

**Author:** ![Budi\_Irawan](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/b/a9adbd/32.png) [@Budi\_Irawan](https://www.ruby-forum.com/u/Budi_Irawan)\
**Post date:** [July 13, 2006, 5:38am UTC](https://www.ruby-forum.com/t/not-active-record-model-validation/96216/5 "2006-07-13T05:38:45Z")

</div>

THANK YOU

I have been looking for a way to do table-less ActiveRecords for a  
month.

Where would I find complete documentation for this technique ?

Cheers
