# Default value in text field

**URL:** <https://www.ruby-forum.com/t/default-value-in-text-field/94735>\
**Category:** Rails\
**Created:** [May 12, 2006, 3:10pm UTC](https://www.ruby-forum.com/t/default-value-in-text-field/94735 "2006-05-12T15:10:33Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![ssssss](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/8dc957/32.png) [@ssssss](https://www.ruby-forum.com/u/ssssss)\
**Post date:** [May 12, 2006, 3:10pm UTC](https://www.ruby-forum.com/t/default-value-in-text-field/94735/1 "2006-05-12T15:10:33Z")

</div>

hi,

This should be really simple, but i cant seem to find the answer  
anywhere!!

In my \_form.rhtml I have the following text field, how can I define a  
default value?  
\<%= text\_field ‘purchaseorder’, ‘number’ %\>

---

<div class="post-metadata">

**Author:** ![ssssss](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/8dc957/32.png) [@ssssss](https://www.ruby-forum.com/u/ssssss)\
**Post date:** [May 12, 2006, 3:24pm UTC](https://www.ruby-forum.com/t/default-value-in-text-field/94735/2 "2006-05-12T15:24:32Z")

</div>

Back in your controller action, do:

def new  
@purchaseorder.number = “some number”  
end

---

<div class="post-metadata">

**Author:** ![ssssss](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/8dc957/32.png) [@ssssss](https://www.ruby-forum.com/u/ssssss)\
**Post date:** [May 12, 2006, 3:29pm UTC](https://www.ruby-forum.com/t/default-value-in-text-field/94735/3 "2006-05-12T15:29:59Z")

</div>

\<%= text\_field ‘purchaseorder’, ‘number’, :value =\> “some value” %\>

but like Bryan said, if you have an instance variable named  
purchaseorder, rails should automatically fill in the default value  
with the attributes of this variable.

Mike

---

<div class="post-metadata">

**Author:** ![ssssss](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/8dc957/32.png) [@ssssss](https://www.ruby-forum.com/u/ssssss)\
**Post date:** [May 12, 2006, 3:33pm UTC](https://www.ruby-forum.com/t/default-value-in-text-field/94735/4 "2006-05-12T15:33:28Z")

</div>

Bryan D. wrote:

> Back in your controller action, do:
> 
> def new  
> @purchaseorder.number = “some number”  
> end

thanks 🙂

---

<div class="post-metadata">

**Author:** ![ssssss](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/8dc957/32.png) [@ssssss](https://www.ruby-forum.com/u/ssssss)\
**Post date:** [May 13, 2006, 5:05am UTC](https://www.ruby-forum.com/t/default-value-in-text-field/94735/5 "2006-05-13T05:05:57Z")

</div>

Possibly a better way to accomplish this is to set a default on the  
model object when it is instantiated:

class PurchaseOrder \< ActiveRecord::Base  
def initialize(attributes = nil)  
super  
self.number = 123 unless number?  
end  
end

-Jonathan.
