<?xml version="1.0" encoding="UTF-8"?>
<ticket>
  <assigned-user-id type="integer">1366</assigned-user-id>
  <attachments-count type="integer">0</attachments-count>
  <closed type="boolean">true</closed>
  <created-at type="datetime">2008-11-03T17:58:51+00:00</created-at>
  <creator-id type="integer">1366</creator-id>
  <milestone-due-on type="datetime">2009-01-12T00:00:00+00:00</milestone-due-on>
  <milestone-id type="integer">21487</milestone-id>
  <number type="integer">26</number>
  <permalink>active-record-validations-and-callbacks</permalink>
  <priority type="integer">8</priority>
  <project-id type="integer">16213</project-id>
  <raw-data type="binary" nil="true" encoding="base64"></raw-data>
  <state>published</state>
  <tag nil="true"></tag>
  <title>Active Record Validations and Callbacks</title>
  <updated-at type="datetime">2009-05-27T21:48:31+01:00</updated-at>
  <user-id type="integer">11378</user-id>
  <user-name>Xavier Noria</user-name>
  <creator-name>Pratik</creator-name>
  <assigned-user-name>Pratik</assigned-user-name>
  <url>http://rails.lighthouseapp.com/projects/16213/tickets/26</url>
  <milestone-title>Guides Batch 2</milestone-title>
  <original-body>Guide should cover all the AR validations, defining custom validations and also the callbacks.</original-body>
  <latest-body>Guide should cover all the AR validations, defining custom validations and also the callbacks.</latest-body>
  <original-body-html>&lt;div&gt;&lt;p&gt;Guide should cover all the AR validations, defining custom
validations and also the callbacks.&lt;/p&gt;&lt;/div&gt;</original-body-html>
  <versions type="array">
    <version type="Ticket::Version">
      <assigned-user-id type="integer">1366</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>Guide should cover all the AR validations, defining custom validations and also the callbacks.</body>
      <body-html>&lt;div&gt;&lt;p&gt;Guide should cover all the AR validations, defining custom
validations and also the callbacks.&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2008-11-03T17:58:51+00:00</created-at>
      <creator-id type="integer">1366</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer">21487</milestone-id>
      <number type="integer">26</number>
      <permalink>active-record-validations-and-callbacks</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">16213</project-id>
      <state>available</state>
      <tag nil="true"></tag>
      <title>Active Record Validations and Callbacks</title>
      <updated-at type="datetime">2008-11-03T17:58:53+00:00</updated-at>
      <user-id type="integer">1366</user-id>
      <user-name>Pratik</user-name>
      <creator-name>Pratik</creator-name>
      <assigned-user-name>Pratik</assigned-user-name>
      <url>http://rails.lighthouseapp.com/projects/16213/tickets/26</url>
      <milestone-title>Guides Batch 2</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">1366</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>Hey, I would like to work on this item, could I?</body>
      <body-html>&lt;div&gt;&lt;p&gt;Hey, I would like to work on this item, could I?&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2008-11-03T20:43:23+00:00</created-at>
      <creator-id type="integer">1366</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer">21487</milestone-id>
      <number type="integer">26</number>
      <permalink>active-record-validations-and-callbacks</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">16213</project-id>
      <state>available</state>
      <tag nil="true"></tag>
      <title>Active Record Validations and Callbacks</title>
      <updated-at type="datetime">2008-11-03T20:43:26+00:00</updated-at>
      <user-id type="integer">36376</user-id>
      <user-name>C&#225;ssio Marques</user-name>
      <creator-name>Pratik</creator-name>
      <assigned-user-name>Pratik</assigned-user-name>
      <url>http://rails.lighthouseapp.com/projects/16213/tickets/26</url>
      <milestone-title>Guides Batch 2</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">1366</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>Great, go for it! We'd like to see at least an outline committed by a week from now. Come see us in #docrails if you have any questions.</body>
      <body-html>&lt;div&gt;&lt;p&gt;Great, go for it! We'd like to see at least an outline committed
by a week from now. Come see us in #docrails if you have any
questions.&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2008-11-04T13:11:02+00:00</created-at>
      <creator-id type="integer">1366</creator-id>
      <diffable-attributes type="yaml">--- 
:state: available
</diffable-attributes>
      <milestone-id type="integer">21487</milestone-id>
      <number type="integer">26</number>
      <permalink>active-record-validations-and-callbacks</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">16213</project-id>
      <state>taken</state>
      <tag nil="true"></tag>
      <title>Active Record Validations and Callbacks</title>
      <updated-at type="datetime">2008-11-04T13:11:03+00:00</updated-at>
      <user-id type="integer">7211</user-id>
      <user-name>Mike Gunderloy</user-name>
      <creator-name>Pratik</creator-name>
      <assigned-user-name>Pratik</assigned-user-name>
      <url>http://rails.lighthouseapp.com/projects/16213/tickets/26</url>
      <milestone-title>Guides Batch 2</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">1366</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>Great, I'll work it out, until the next week I hope to have more than an
outline commited :-)


2008/11/4 Lighthouse &lt;support@lighthouseapp.com&gt;</body>
      <body-html>&lt;div&gt;&lt;p&gt;Great, I'll work it out, until the next week I hope to have more
than an outline commited :-)&lt;/p&gt;
&lt;p&gt;2008/11/4 Lighthouse &lt;a href=&quot;mailto:support@lighthouseapp.com&quot;&gt;support@lighthouseapp.com&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2008-11-04T13:25:06+00:00</created-at>
      <creator-id type="integer">1366</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer">21487</milestone-id>
      <number type="integer">26</number>
      <permalink>active-record-validations-and-callbacks</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">16213</project-id>
      <state>taken</state>
      <tag nil="true"></tag>
      <title>Active Record Validations and Callbacks</title>
      <updated-at type="datetime">2008-11-04T13:25:07+00:00</updated-at>
      <user-id type="integer">36376</user-id>
      <user-name>C&#225;ssio Marques</user-name>
      <creator-name>Pratik</creator-name>
      <assigned-user-name>Pratik</assigned-user-name>
      <url>http://rails.lighthouseapp.com/projects/16213/tickets/26</url>
      <milestone-title>Guides Batch 2</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">1366</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>If this guide is made re-available, I'd appreciate the opportunity to contribute. I'm open for whatever if there's other stuff to do, though - it seems everything is taken! :)</body>
      <body-html>&lt;div&gt;&lt;p&gt;If this guide is made re-available, I'd appreciate the
opportunity to contribute. I'm open for whatever if there's other
stuff to do, though - it seems everything is taken! :)&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2008-11-27T19:52:18+00:00</created-at>
      <creator-id type="integer">1366</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer">21487</milestone-id>
      <number type="integer">26</number>
      <permalink>active-record-validations-and-callbacks</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">16213</project-id>
      <state>taken</state>
      <tag nil="true"></tag>
      <title>Active Record Validations and Callbacks</title>
      <updated-at type="datetime">2008-11-27T19:52:19+00:00</updated-at>
      <user-id type="integer">643</user-id>
      <user-name>Trevor Turk</user-name>
      <creator-name>Pratik</creator-name>
      <assigned-user-name>Pratik</assigned-user-name>
      <url>http://rails.lighthouseapp.com/projects/16213/tickets/26</url>
      <milestone-title>Guides Batch 2</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">1366</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>I'm almost done with that :)</body>
      <body-html>&lt;div&gt;&lt;p&gt;I'm almost done with that :)&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2008-11-27T22:07:58+00:00</created-at>
      <creator-id type="integer">1366</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer">21487</milestone-id>
      <number type="integer">26</number>
      <permalink>active-record-validations-and-callbacks</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">16213</project-id>
      <state>taken</state>
      <tag nil="true"></tag>
      <title>Active Record Validations and Callbacks</title>
      <updated-at type="datetime">2008-11-27T22:07:59+00:00</updated-at>
      <user-id type="integer">36376</user-id>
      <user-name>C&#225;ssio Marques</user-name>
      <creator-name>Pratik</creator-name>
      <assigned-user-name>Pratik</assigned-user-name>
      <url>http://rails.lighthouseapp.com/projects/16213/tickets/26</url>
      <milestone-title>Guides Batch 2</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">1366</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>Initial version completed. Please revise it!</body>
      <body-html>&lt;div&gt;&lt;p&gt;Initial version completed. Please revise it!&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2008-12-02T00:17:53+00:00</created-at>
      <creator-id type="integer">1366</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer">21487</milestone-id>
      <number type="integer">26</number>
      <permalink>active-record-validations-and-callbacks</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">16213</project-id>
      <state>taken</state>
      <tag nil="true"></tag>
      <title>Active Record Validations and Callbacks</title>
      <updated-at type="datetime">2008-12-02T00:17:56+00:00</updated-at>
      <user-id type="integer">36376</user-id>
      <user-name>C&#225;ssio Marques</user-name>
      <creator-name>Pratik</creator-name>
      <assigned-user-name>Pratik</assigned-user-name>
      <url>http://rails.lighthouseapp.com/projects/16213/tickets/26</url>
      <milestone-title>Guides Batch 2</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">1366</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>Some notes (not looking at style/spelling cleanup yet):

- Talking about clients turning javascript validations off: not sure that's really important, since Rails itself is basically broken without javascript.
- Spelling of validates_numericality_of needs to be fixed several places (only one &quot;l&quot;)
- Need to manually wrap some of the longer code lines. 80 columns is probably a good rule of thumb
- should probably note the effect that calling errors.clear has on the object's validity
- Halting execution on callbacks - this only works on before_xxx callbacks,right?
- registering AR observers - probably good to note environment.rb is the usual spot to do this, but you can do elsewhere (ie if you want an observer only in some environments)</body>
      <body-html>&lt;div&gt;&lt;p&gt;Some notes (not looking at style/spelling cleanup yet):&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Talking about clients turning javascript validations off: not
sure that's really important, since Rails itself is basically
broken without javascript.&lt;/li&gt;
&lt;li&gt;Spelling of validates_numericality_of needs to be fixed several
places (only one &quot;l&quot;)&lt;/li&gt;
&lt;li&gt;Need to manually wrap some of the longer code lines. 80 columns
is probably a good rule of thumb&lt;/li&gt;
&lt;li&gt;should probably note the effect that calling errors.clear has
on the object's validity&lt;/li&gt;
&lt;li&gt;Halting execution on callbacks - this only works on before_xxx
callbacks,right?&lt;/li&gt;
&lt;li&gt;registering AR observers - probably good to note environment.rb
is the usual spot to do this, but you can do elsewhere (ie if you
want an observer only in some environments)&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2008-12-08T14:12:13+00:00</created-at>
      <creator-id type="integer">1366</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer">21487</milestone-id>
      <number type="integer">26</number>
      <permalink>active-record-validations-and-callbacks</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">16213</project-id>
      <state>taken</state>
      <tag nil="true"></tag>
      <title>Active Record Validations and Callbacks</title>
      <updated-at type="datetime">2008-12-08T14:12:16+00:00</updated-at>
      <user-id type="integer">7211</user-id>
      <user-name>Mike Gunderloy</user-name>
      <creator-name>Pratik</creator-name>
      <assigned-user-name>Pratik</assigned-user-name>
      <url>http://rails.lighthouseapp.com/projects/16213/tickets/26</url>
      <milestone-title>Guides Batch 2</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">1366</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>Oh, should probably also bring in error_messages_for and how to do your own version - we get a lot of questions on that in #rubyonrails</body>
      <body-html>&lt;div&gt;&lt;p&gt;Oh, should probably also bring in error_messages_for and how to
do your own version - we get a lot of questions on that in
#rubyonrails&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2008-12-08T14:15:02+00:00</created-at>
      <creator-id type="integer">1366</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer">21487</milestone-id>
      <number type="integer">26</number>
      <permalink>active-record-validations-and-callbacks</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">16213</project-id>
      <state>taken</state>
      <tag nil="true"></tag>
      <title>Active Record Validations and Callbacks</title>
      <updated-at type="datetime">2008-12-08T14:15:03+00:00</updated-at>
      <user-id type="integer">7211</user-id>
      <user-name>Mike Gunderloy</user-name>
      <creator-name>Pratik</creator-name>
      <assigned-user-name>Pratik</assigned-user-name>
      <url>http://rails.lighthouseapp.com/projects/16213/tickets/26</url>
      <milestone-title>Guides Batch 2</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">1366</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>Ok Mike, I'll take a look at all those itens and let you know when they are ready.</body>
      <body-html>&lt;div&gt;&lt;p&gt;Ok Mike, I'll take a look at all those itens and let you know
when they are ready.&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2008-12-08T16:04:47+00:00</created-at>
      <creator-id type="integer">1366</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer">21487</milestone-id>
      <number type="integer">26</number>
      <permalink>active-record-validations-and-callbacks</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">16213</project-id>
      <state>taken</state>
      <tag nil="true"></tag>
      <title>Active Record Validations and Callbacks</title>
      <updated-at type="datetime">2008-12-08T16:04:50+00:00</updated-at>
      <user-id type="integer">36376</user-id>
      <user-name>C&#225;ssio Marques</user-name>
      <creator-name>Pratik</creator-name>
      <assigned-user-name>Pratik</assigned-user-name>
      <url>http://rails.lighthouseapp.com/projects/16213/tickets/26</url>
      <milestone-title>Guides Batch 2</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">7211</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>All missing items done, please revise it again!</body>
      <body-html>&lt;div&gt;&lt;p&gt;All missing items done, please revise it again!&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2008-12-29T01:06:02+00:00</created-at>
      <creator-id type="integer">1366</creator-id>
      <diffable-attributes type="yaml">--- 
:assigned_user: 1366
</diffable-attributes>
      <milestone-id type="integer">21487</milestone-id>
      <number type="integer">26</number>
      <permalink>active-record-validations-and-callbacks</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">16213</project-id>
      <state>taken</state>
      <tag nil="true"></tag>
      <title>Active Record Validations and Callbacks</title>
      <updated-at type="datetime">2008-12-29T01:06:07+00:00</updated-at>
      <user-id type="integer">36376</user-id>
      <user-name>C&#225;ssio Marques</user-name>
      <creator-name>Pratik</creator-name>
      <assigned-user-name>Mike Gunderloy</assigned-user-name>
      <url>http://rails.lighthouseapp.com/projects/16213/tickets/26</url>
      <milestone-title>Guides Batch 2</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">7211</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>Hey C&#225;ssio,

Thanks for the great work ! I've added this guide on the index page of http://guides.rails.info

Under &quot;6. Writing your own validation methods&quot; - I wouldn't give the example of overriding validate_on_create. I think that's a very bad practise.</body>
      <body-html>&lt;div&gt;&lt;p&gt;Hey C&amp;aacute;ssio,&lt;/p&gt;
&lt;p&gt;Thanks for the great work ! I've added this guide on the index
page of &lt;a href=&quot;http://guides.rails.info&quot;&gt;http://guides.rails.info&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Under &quot;6. Writing your own validation methods&quot; - I wouldn't give
the example of overriding validate_on_create. I think that's a very
bad practise.&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2008-12-31T15:44:29+00:00</created-at>
      <creator-id type="integer">1366</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer">21487</milestone-id>
      <number type="integer">26</number>
      <permalink>active-record-validations-and-callbacks</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">16213</project-id>
      <state>taken</state>
      <tag nil="true"></tag>
      <title>Active Record Validations and Callbacks</title>
      <updated-at type="datetime">2008-12-31T15:44:30+00:00</updated-at>
      <user-id type="integer">1366</user-id>
      <user-name>Pratik</user-name>
      <creator-name>Pratik</creator-name>
      <assigned-user-name>Mike Gunderloy</assigned-user-name>
      <url>http://rails.lighthouseapp.com/projects/16213/tickets/26</url>
      <milestone-title>Guides Batch 2</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">1366</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>Example about overriding validate_on_create removed. Also added a new section in the authors page.</body>
      <body-html>&lt;div&gt;&lt;p&gt;Example about overriding validate_on_create removed. Also added
a new section in the authors page.&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2009-01-01T18:53:03+00:00</created-at>
      <creator-id type="integer">1366</creator-id>
      <diffable-attributes type="yaml">--- 
:assigned_user: 7211
</diffable-attributes>
      <milestone-id type="integer">21487</milestone-id>
      <number type="integer">26</number>
      <permalink>active-record-validations-and-callbacks</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">16213</project-id>
      <state>taken</state>
      <tag nil="true"></tag>
      <title>Active Record Validations and Callbacks</title>
      <updated-at type="datetime">2009-01-01T18:53:06+00:00</updated-at>
      <user-id type="integer">36376</user-id>
      <user-name>C&#225;ssio Marques</user-name>
      <creator-name>Pratik</creator-name>
      <assigned-user-name>Pratik</assigned-user-name>
      <url>http://rails.lighthouseapp.com/projects/16213/tickets/26</url>
      <milestone-title>Guides Batch 2</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">1366</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>Some more stuff :

* validates_each should be the last in that section
* 4. Common validation options should has :allow_blank too.

Callbacks :

* Should explain 'conidtional callbacks' -- exactly like conditional validations
* '9.2. Registering callbacks by overriding the callback methods' -- we shouldn't have an example of callback where it's overriding the callback method name. Just like my previous comment.
* Explaination for how the entire callback chain is wrapper in a transaction. Raising an exception or returning false fires ROLLBACK
* I think it might be useful to give a small example of each callback and when/why they can/should be used. 

If you need any help with these, I'd be happy to help!</body>
      <body-html>&lt;div&gt;&lt;p&gt;Some more stuff :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;validates_each should be the last in that section&lt;/li&gt;
&lt;li&gt;
&lt;ol&gt;
&lt;li&gt;Common validation options should has :allow_blank too.&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Callbacks :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Should explain 'conidtional callbacks' -- exactly like
conditional validations&lt;/li&gt;
&lt;li&gt;'9.2. Registering callbacks by overriding the callback methods'
-- we shouldn't have an example of callback where it's overriding
the callback method name. Just like my previous comment.&lt;/li&gt;
&lt;li&gt;Explaination for how the entire callback chain is wrapper in a
transaction. Raising an exception or returning false fires
ROLLBACK&lt;/li&gt;
&lt;li&gt;I think it might be useful to give a small example of each
callback and when/why they can/should be used.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;If you need any help with these, I'd be happy to help!&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2009-01-08T00:26:45+00:00</created-at>
      <creator-id type="integer">1366</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer">21487</milestone-id>
      <number type="integer">26</number>
      <permalink>active-record-validations-and-callbacks</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">16213</project-id>
      <state>taken</state>
      <tag nil="true"></tag>
      <title>Active Record Validations and Callbacks</title>
      <updated-at type="datetime">2009-01-08T00:26:50+00:00</updated-at>
      <user-id type="integer">1366</user-id>
      <user-name>Pratik</user-name>
      <creator-name>Pratik</creator-name>
      <assigned-user-name>Pratik</assigned-user-name>
      <url>http://rails.lighthouseapp.com/projects/16213/tickets/26</url>
      <milestone-title>Guides Batch 2</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">1366</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>&quot;Multiple Conditions for Callbacks&quot; from http://weblog.rubyonrails.org/2009/1/2/this-week-in-edge-rails will be good to cover too :)</body>
      <body-html>&lt;div&gt;&lt;p&gt;&quot;Multiple Conditions for Callbacks&quot; from &lt;a href=&quot;http://weblog.rubyonrails.org/2009/1/2/this-week-in-edge-rails&quot;&gt;http://weblog.rubyonrails.org/20...&lt;/a&gt;
will be good to cover too :)&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2009-01-08T00:54:50+00:00</created-at>
      <creator-id type="integer">1366</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer">21487</milestone-id>
      <number type="integer">26</number>
      <permalink>active-record-validations-and-callbacks</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">16213</project-id>
      <state>taken</state>
      <tag nil="true"></tag>
      <title>Active Record Validations and Callbacks</title>
      <updated-at type="datetime">2009-01-08T00:54:54+00:00</updated-at>
      <user-id type="integer">1366</user-id>
      <user-name>Pratik</user-name>
      <creator-name>Pratik</creator-name>
      <assigned-user-name>Pratik</assigned-user-name>
      <url>http://rails.lighthouseapp.com/projects/16213/tickets/26</url>
      <milestone-title>Guides Batch 2</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">1366</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>Hey,

validates_numericality_of has quite a few options like : 

@@@ ruby
      # * &lt;tt&gt;:greater_than&lt;/tt&gt; - Specifies the value must be greater than the supplied value.
      # * &lt;tt&gt;:greater_than_or_equal_to&lt;/tt&gt; - Specifies the value must be greater than or equal the supplied value.
      # * &lt;tt&gt;:equal_to&lt;/tt&gt; - Specifies the value must be equal to the supplied value.
      # * &lt;tt&gt;:less_than&lt;/tt&gt; - Specifies the value must be less than the supplied value.
      # * &lt;tt&gt;:less_than_or_equal_to&lt;/tt&gt; - Specifies the value must be less than or equal the supplied value.
      # * &lt;tt&gt;:odd&lt;/tt&gt; - Specifies the value must be an odd number.
      # * &lt;tt&gt;:even&lt;/tt&gt; - Specifies the value must be an even number.
@@@</body>
      <body-html>&lt;div&gt;&lt;p&gt;Hey,&lt;/p&gt;
&lt;p&gt;validates_numericality_of has quite a few options like :&lt;/p&gt;


&lt;pre&gt;&lt;code class=&quot;ruby&quot;&gt;
      # * &amp;lt;tt&amp;gt;:greater_than&amp;lt;/tt&amp;gt; - Specifies the value must be greater than the supplied value.
      # * &amp;lt;tt&amp;gt;:greater_than_or_equal_to&amp;lt;/tt&amp;gt; - Specifies the value must be greater than or equal the supplied value.
      # * &amp;lt;tt&amp;gt;:equal_to&amp;lt;/tt&amp;gt; - Specifies the value must be equal to the supplied value.
      # * &amp;lt;tt&amp;gt;:less_than&amp;lt;/tt&amp;gt; - Specifies the value must be less than the supplied value.
      # * &amp;lt;tt&amp;gt;:less_than_or_equal_to&amp;lt;/tt&amp;gt; - Specifies the value must be less than or equal the supplied value.
      # * &amp;lt;tt&amp;gt;:odd&amp;lt;/tt&amp;gt; - Specifies the value must be an odd number.
      # * &amp;lt;tt&amp;gt;:even&amp;lt;/tt&amp;gt; - Specifies the value must be an even number.
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2009-01-14T02:17:54+00:00</created-at>
      <creator-id type="integer">1366</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer">21487</milestone-id>
      <number type="integer">26</number>
      <permalink>active-record-validations-and-callbacks</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">16213</project-id>
      <state>taken</state>
      <tag nil="true"></tag>
      <title>Active Record Validations and Callbacks</title>
      <updated-at type="datetime">2009-01-14T02:17:57+00:00</updated-at>
      <user-id type="integer">1366</user-id>
      <user-name>Pratik</user-name>
      <creator-name>Pratik</creator-name>
      <assigned-user-name>Pratik</assigned-user-name>
      <url>http://rails.lighthouseapp.com/projects/16213/tickets/26</url>
      <milestone-title>Guides Batch 2</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">1366</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>Should at least mention those. And also, you should add your name and link it to the author's page at the bottom of the guide.

Thanks!</body>
      <body-html>&lt;div&gt;&lt;p&gt;Should at least mention those. And also, you should add your
name and link it to the author's page at the bottom of the
guide.&lt;/p&gt;
&lt;p&gt;Thanks!&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2009-01-14T02:18:34+00:00</created-at>
      <creator-id type="integer">1366</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer">21487</milestone-id>
      <number type="integer">26</number>
      <permalink>active-record-validations-and-callbacks</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">16213</project-id>
      <state>taken</state>
      <tag nil="true"></tag>
      <title>Active Record Validations and Callbacks</title>
      <updated-at type="datetime">2009-01-14T02:18:38+00:00</updated-at>
      <user-id type="integer">1366</user-id>
      <user-name>Pratik</user-name>
      <creator-name>Pratik</creator-name>
      <assigned-user-name>Pratik</assigned-user-name>
      <url>http://rails.lighthouseapp.com/projects/16213/tickets/26</url>
      <milestone-title>Guides Batch 2</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">1366</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>Just read it, excellent guide.

The second sentence here doesn't sound right to me:

@@@
Rails provides built-in helpers to display the error messages of your models in your view templates.
It may be useful to display those messages when you&#8217;re trying to create or edit a record and validation fails.
@@@

It would deal away with it completely.

Also, same section:

@@@
If you&#8217;re using the form_for helper to create a form,
you can use it to call the error_messages method,
which creates a div element containing all the
error messages for the model associated with the form.

--- reformulation:

When creating a form with the form_for helper,
you can use the error_messages method on the form builder
to render all failed validation messages
for the current model instance.
@@@</body>
      <body-html>&lt;div&gt;&lt;p&gt;Just read it, excellent guide.&lt;/p&gt;
&lt;p&gt;The second sentence here doesn't sound right to me:&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;
Rails provides built-in helpers to display the error messages of your models in your view templates.
It may be useful to display those messages when you&#8217;re trying to create or edit a record and validation fails.
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;It would deal away with it completely.&lt;/p&gt;
&lt;p&gt;Also, same section:&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;
If you&#8217;re using the form_for helper to create a form,
you can use it to call the error_messages method,
which creates a div element containing all the
error messages for the model associated with the form.

--- reformulation:

When creating a form with the form_for helper,
you can use the error_messages method on the form builder
to render all failed validation messages
for the current model instance.
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2009-01-14T09:02:11+00:00</created-at>
      <creator-id type="integer">1366</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer">21487</milestone-id>
      <number type="integer">26</number>
      <permalink>active-record-validations-and-callbacks</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">16213</project-id>
      <state>taken</state>
      <tag nil="true"></tag>
      <title>Active Record Validations and Callbacks</title>
      <updated-at type="datetime">2009-01-14T09:02:12+00:00</updated-at>
      <user-id type="integer">192</user-id>
      <user-name>Mislav</user-name>
      <creator-name>Pratik</creator-name>
      <assigned-user-name>Pratik</assigned-user-name>
      <url>http://rails.lighthouseapp.com/projects/16213/tickets/26</url>
      <milestone-title>Guides Batch 2</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">7211</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>I'm +1 for done.</body>
      <body-html>&lt;div&gt;&lt;p&gt;I'm +1 for done.&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2009-01-15T01:57:43+00:00</created-at>
      <creator-id type="integer">1366</creator-id>
      <diffable-attributes type="yaml">--- 
:assigned_user: 1366
</diffable-attributes>
      <milestone-id type="integer">21487</milestone-id>
      <number type="integer">26</number>
      <permalink>active-record-validations-and-callbacks</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">16213</project-id>
      <state>taken</state>
      <tag nil="true"></tag>
      <title>Active Record Validations and Callbacks</title>
      <updated-at type="datetime">2009-01-15T01:57:46+00:00</updated-at>
      <user-id type="integer">1366</user-id>
      <user-name>Pratik</user-name>
      <creator-name>Pratik</creator-name>
      <assigned-user-name>Mike Gunderloy</assigned-user-name>
      <url>http://rails.lighthouseapp.com/projects/16213/tickets/26</url>
      <milestone-title>Guides Batch 2</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">7211</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>I've improved this guide a bit (hopefully):

http://github.com/lifo/docrails/commit/1ca565a16a6f966ba9f434b439c385b492a716df

I'll make time over this week to continue reviewing and perhaps improving it. I'll post back here when I'm finished. I'll be as quick as possible. 

Please let me know if you have any feedback at all.

Thanks,
- Trevor</body>
      <body-html>&lt;div&gt;&lt;p&gt;I've improved this guide a bit (hopefully):&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://github.com/lifo/docrails/commit/1ca565a16a6f966ba9f434b439c385b492a716df&quot;&gt;
http://github.com/lifo/docrails/...&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;I'll make time over this week to continue reviewing and perhaps
improving it. I'll post back here when I'm finished. I'll be as
quick as possible.&lt;/p&gt;
&lt;p&gt;Please let me know if you have any feedback at all.&lt;/p&gt;
&lt;p&gt;Thanks, - Trevor&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2009-02-04T08:02:17+00:00</created-at>
      <creator-id type="integer">1366</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer">21487</milestone-id>
      <number type="integer">26</number>
      <permalink>active-record-validations-and-callbacks</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">16213</project-id>
      <state>taken</state>
      <tag nil="true"></tag>
      <title>Active Record Validations and Callbacks</title>
      <updated-at type="datetime">2009-02-04T08:02:19+00:00</updated-at>
      <user-id type="integer">643</user-id>
      <user-name>Trevor Turk</user-name>
      <creator-name>Pratik</creator-name>
      <assigned-user-name>Mike Gunderloy</assigned-user-name>
      <url>http://rails.lighthouseapp.com/projects/16213/tickets/26</url>
      <milestone-title>Guides Batch 2</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">7211</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>Hey Trevor,

Thanks for the update. So I was talking to Mike and we concluded that it's best to not link to API docs. So I'm gonna remove all the links.

C&#225;ssio : I've added TODOs in section 1
* Skip Validations
* Object#invalid?</body>
      <body-html>&lt;div&gt;&lt;p&gt;Hey Trevor,&lt;/p&gt;
&lt;p&gt;Thanks for the update. So I was talking to Mike and we concluded
that it's best to not link to API docs. So I'm gonna remove all the
links.&lt;/p&gt;
&lt;p&gt;C&amp;aacute;ssio : I've added TODOs in section 1 * Skip Validations
* Object#invalid?&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2009-02-04T14:40:19+00:00</created-at>
      <creator-id type="integer">1366</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer">21487</milestone-id>
      <number type="integer">26</number>
      <permalink>active-record-validations-and-callbacks</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">16213</project-id>
      <state>taken</state>
      <tag nil="true"></tag>
      <title>Active Record Validations and Callbacks</title>
      <updated-at type="datetime">2009-02-04T14:40:24+00:00</updated-at>
      <user-id type="integer">1366</user-id>
      <user-name>Pratik</user-name>
      <creator-name>Pratik</creator-name>
      <assigned-user-name>Mike Gunderloy</assigned-user-name>
      <url>http://rails.lighthouseapp.com/projects/16213/tickets/26</url>
      <milestone-title>Guides Batch 2</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">7211</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>That's fine. I'll work on those TODOs after work today. I might do a little reorganization to create a section that clarifies when callbacks and validations are run, and when they are skipped. I think it's still a little confusing, but getting better!</body>
      <body-html>&lt;div&gt;&lt;p&gt;That's fine. I'll work on those TODOs after work today. I might
do a little reorganization to create a section that clarifies when
callbacks and validations are run, and when they are skipped. I
think it's still a little confusing, but getting better!&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2009-02-04T15:06:28+00:00</created-at>
      <creator-id type="integer">1366</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer">21487</milestone-id>
      <number type="integer">26</number>
      <permalink>active-record-validations-and-callbacks</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">16213</project-id>
      <state>taken</state>
      <tag nil="true"></tag>
      <title>Active Record Validations and Callbacks</title>
      <updated-at type="datetime">2009-02-04T15:06:31+00:00</updated-at>
      <user-id type="integer">643</user-id>
      <user-name>Trevor Turk</user-name>
      <creator-name>Pratik</creator-name>
      <assigned-user-name>Mike Gunderloy</assigned-user-name>
      <url>http://rails.lighthouseapp.com/projects/16213/tickets/26</url>
      <milestone-title>Guides Batch 2</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">7211</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>Pratik,

Please assign the person who should do the TODOs, I'm afraid we can get into trouble when merging if me and Trevor both work of them.

Thanks!</body>
      <body-html>&lt;div&gt;&lt;p&gt;Pratik,&lt;/p&gt;
&lt;p&gt;Please assign the person who should do the TODOs, I'm afraid we
can get into trouble when merging if me and Trevor both work of
them.&lt;/p&gt;
&lt;p&gt;Thanks!&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2009-02-04T15:18:53+00:00</created-at>
      <creator-id type="integer">1366</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer">21487</milestone-id>
      <number type="integer">26</number>
      <permalink>active-record-validations-and-callbacks</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">16213</project-id>
      <state>taken</state>
      <tag nil="true"></tag>
      <title>Active Record Validations and Callbacks</title>
      <updated-at type="datetime">2009-02-04T15:18:57+00:00</updated-at>
      <user-id type="integer">36376</user-id>
      <user-name>C&#225;ssio Marques</user-name>
      <creator-name>Pratik</creator-name>
      <assigned-user-name>Mike Gunderloy</assigned-user-name>
      <url>http://rails.lighthouseapp.com/projects/16213/tickets/26</url>
      <milestone-title>Guides Batch 2</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">7211</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>Trevor/C&#225;ssio : Maybe you guys could just have chat in #docrails and decide ?</body>
      <body-html>&lt;div&gt;&lt;p&gt;Trevor/C&amp;aacute;ssio : Maybe you guys could just have chat in
#docrails and decide ?&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2009-02-04T15:24:44+00:00</created-at>
      <creator-id type="integer">1366</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer">21487</milestone-id>
      <number type="integer">26</number>
      <permalink>active-record-validations-and-callbacks</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">16213</project-id>
      <state>taken</state>
      <tag nil="true"></tag>
      <title>Active Record Validations and Callbacks</title>
      <updated-at type="datetime">2009-02-04T15:24:48+00:00</updated-at>
      <user-id type="integer">1366</user-id>
      <user-name>Pratik</user-name>
      <creator-name>Pratik</creator-name>
      <assigned-user-name>Mike Gunderloy</assigned-user-name>
      <url>http://rails.lighthouseapp.com/projects/16213/tickets/26</url>
      <milestone-title>Guides Batch 2</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">7211</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>I'll be in #docrails on and off today as &quot;trevorturk&quot; if you want to chat. I'm happy to help, but it's your guide so please feel free to take over. I'm sure I can find something else to work on easy enough!</body>
      <body-html>&lt;div&gt;&lt;p&gt;I'll be in #docrails on and off today as &quot;trevorturk&quot; if you
want to chat. I'm happy to help, but it's your guide so please feel
free to take over. I'm sure I can find something else to work on
easy enough!&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2009-02-04T15:27:47+00:00</created-at>
      <creator-id type="integer">1366</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer">21487</milestone-id>
      <number type="integer">26</number>
      <permalink>active-record-validations-and-callbacks</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">16213</project-id>
      <state>taken</state>
      <tag nil="true"></tag>
      <title>Active Record Validations and Callbacks</title>
      <updated-at type="datetime">2009-02-04T15:27:49+00:00</updated-at>
      <user-id type="integer">643</user-id>
      <user-name>Trevor Turk</user-name>
      <creator-name>Pratik</creator-name>
      <assigned-user-name>Mike Gunderloy</assigned-user-name>
      <url>http://rails.lighthouseapp.com/projects/16213/tickets/26</url>
      <milestone-title>Guides Batch 2</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">7211</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>OK - we discussed it, and I'm going to finish up these TODOs and an overall review. I'll post back here when I think the guide is all finished up.</body>
      <body-html>&lt;div&gt;&lt;p&gt;OK - we discussed it, and I'm going to finish up these TODOs and
an overall review. I'll post back here when I think the guide is
all finished up.&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2009-02-04T19:11:53+00:00</created-at>
      <creator-id type="integer">1366</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer">21487</milestone-id>
      <number type="integer">26</number>
      <permalink>active-record-validations-and-callbacks</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">16213</project-id>
      <state>taken</state>
      <tag nil="true"></tag>
      <title>Active Record Validations and Callbacks</title>
      <updated-at type="datetime">2009-02-04T19:11:58+00:00</updated-at>
      <user-id type="integer">643</user-id>
      <user-name>Trevor Turk</user-name>
      <creator-name>Pratik</creator-name>
      <assigned-user-name>Mike Gunderloy</assigned-user-name>
      <url>http://rails.lighthouseapp.com/projects/16213/tickets/26</url>
      <milestone-title>Guides Batch 2</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">7211</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>I've finished the TODOs, but added some of my own :) Feedback is welcome. I'll be continuing work tomorrow.</body>
      <body-html>&lt;div&gt;&lt;p&gt;I've finished the TODOs, but added some of my own :) Feedback is
welcome. I'll be continuing work tomorrow.&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2009-02-05T07:27:31+00:00</created-at>
      <creator-id type="integer">1366</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer">21487</milestone-id>
      <number type="integer">26</number>
      <permalink>active-record-validations-and-callbacks</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">16213</project-id>
      <state>taken</state>
      <tag nil="true"></tag>
      <title>Active Record Validations and Callbacks</title>
      <updated-at type="datetime">2009-02-05T07:27:36+00:00</updated-at>
      <user-id type="integer">643</user-id>
      <user-name>Trevor Turk</user-name>
      <creator-name>Pratik</creator-name>
      <assigned-user-name>Mike Gunderloy</assigned-user-name>
      <url>http://rails.lighthouseapp.com/projects/16213/tickets/26</url>
      <milestone-title>Guides Batch 2</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">7211</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>I don't think &quot;registrate&quot; is a word.</body>
      <body-html>&lt;div&gt;&lt;p&gt;I don't think &quot;registrate&quot; is a word.&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2009-02-06T20:53:23+00:00</created-at>
      <creator-id type="integer">1366</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer">21487</milestone-id>
      <number type="integer">26</number>
      <permalink>active-record-validations-and-callbacks</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">16213</project-id>
      <state>taken</state>
      <tag nil="true"></tag>
      <title>Active Record Validations and Callbacks</title>
      <updated-at type="datetime">2009-02-06T20:53:24+00:00</updated-at>
      <user-id type="integer">36204</user-id>
      <user-name>liammonahan</user-name>
      <creator-name>Pratik</creator-name>
      <assigned-user-name>Mike Gunderloy</assigned-user-name>
      <url>http://rails.lighthouseapp.com/projects/16213/tickets/26</url>
      <milestone-title>Guides Batch 2</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">7211</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>I've updated the Observers section and added myself to the changelog/credits. Let me know if you'd prefer something more serious in the credits, though :)

Feedback welcome. I've got a few more TODOs out there, so I'll be hacking away at improving this guide as much as possible over the next week or two.</body>
      <body-html>&lt;div&gt;&lt;p&gt;I've updated the Observers section and added myself to the
changelog/credits. Let me know if you'd prefer something more
serious in the credits, though :)&lt;/p&gt;
&lt;p&gt;Feedback welcome. I've got a few more TODOs out there, so I'll
be hacking away at improving this guide as much as possible over
the next week or two.&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2009-02-10T06:47:21+00:00</created-at>
      <creator-id type="integer">1366</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer">21487</milestone-id>
      <number type="integer">26</number>
      <permalink>active-record-validations-and-callbacks</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">16213</project-id>
      <state>taken</state>
      <tag nil="true"></tag>
      <title>Active Record Validations and Callbacks</title>
      <updated-at type="datetime">2009-02-10T06:47:26+00:00</updated-at>
      <user-id type="integer">643</user-id>
      <user-name>Trevor Turk</user-name>
      <creator-name>Pratik</creator-name>
      <assigned-user-name>Mike Gunderloy</assigned-user-name>
      <url>http://rails.lighthouseapp.com/projects/16213/tickets/26</url>
      <milestone-title>Guides Batch 2</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">7211</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>OK, I'm all done with my revisions for this guide. I think it's ready for a final review and then we can call it done. Thanks!</body>
      <body-html>&lt;div&gt;&lt;p&gt;OK, I'm all done with my revisions for this guide. I think it's
ready for a final review and then we can call it done. Thanks!&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2009-03-07T23:42:10+00:00</created-at>
      <creator-id type="integer">1366</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer">21487</milestone-id>
      <number type="integer">26</number>
      <permalink>active-record-validations-and-callbacks</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">16213</project-id>
      <state>taken</state>
      <tag nil="true"></tag>
      <title>Active Record Validations and Callbacks</title>
      <updated-at type="datetime">2009-03-07T23:42:13+00:00</updated-at>
      <user-id type="integer">643</user-id>
      <user-name>Trevor Turk</user-name>
      <creator-name>Pratik</creator-name>
      <assigned-user-name>Mike Gunderloy</assigned-user-name>
      <url>http://rails.lighthouseapp.com/projects/16213/tickets/26</url>
      <milestone-title>Guides Batch 2</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">7211</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>That's brilliant !

Thanks</body>
      <body-html>&lt;div&gt;&lt;p&gt;That's brilliant !&lt;/p&gt;
&lt;p&gt;Thanks&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2009-03-07T23:55:18+00:00</created-at>
      <creator-id type="integer">1366</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer">21487</milestone-id>
      <number type="integer">26</number>
      <permalink>active-record-validations-and-callbacks</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">16213</project-id>
      <state>taken</state>
      <tag nil="true"></tag>
      <title>Active Record Validations and Callbacks</title>
      <updated-at type="datetime">2009-03-07T23:55:24+00:00</updated-at>
      <user-id type="integer">1366</user-id>
      <user-name>Pratik</user-name>
      <creator-name>Pratik</creator-name>
      <assigned-user-name>Mike Gunderloy</assigned-user-name>
      <url>http://rails.lighthouseapp.com/projects/16213/tickets/26</url>
      <milestone-title>Guides Batch 2</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">7211</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>Hi! Could you please revise the first image that depicts error messages in section 8? The &quot;Description&quot; label lacks red background.</body>
      <body-html>&lt;div&gt;&lt;p&gt;Hi! Could you please revise the first image that depicts error
messages in section 8? The &quot;Description&quot; label lacks red
background.&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2009-03-10T21:25:32+00:00</created-at>
      <creator-id type="integer">1366</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer">21487</milestone-id>
      <number type="integer">26</number>
      <permalink>active-record-validations-and-callbacks</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">16213</project-id>
      <state>taken</state>
      <tag nil="true"></tag>
      <title>Active Record Validations and Callbacks</title>
      <updated-at type="datetime">2009-03-10T21:46:00+00:00</updated-at>
      <user-id type="integer">11378</user-id>
      <user-name>Xavier Noria</user-name>
      <creator-name>Pratik</creator-name>
      <assigned-user-name>Mike Gunderloy</assigned-user-name>
      <url>http://rails.lighthouseapp.com/projects/16213/tickets/26</url>
      <milestone-title>Guides Batch 2</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">7211</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>C&#225;ssio, this one is for you. I didn't do anything with those images.</body>
      <body-html>&lt;div&gt;&lt;p&gt;C&amp;aacute;ssio, this one is for you. I didn't do anything with
those images.&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2009-03-10T22:10:51+00:00</created-at>
      <creator-id type="integer">1366</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer">21487</milestone-id>
      <number type="integer">26</number>
      <permalink>active-record-validations-and-callbacks</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">16213</project-id>
      <state>taken</state>
      <tag nil="true"></tag>
      <title>Active Record Validations and Callbacks</title>
      <updated-at type="datetime">2009-03-10T22:48:13+00:00</updated-at>
      <user-id type="integer">643</user-id>
      <user-name>Trevor Turk</user-name>
      <creator-name>Pratik</creator-name>
      <assigned-user-name>Mike Gunderloy</assigned-user-name>
      <url>http://rails.lighthouseapp.com/projects/16213/tickets/26</url>
      <milestone-title>Guides Batch 2</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">7211</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>Ok, I'll take a look!</body>
      <body-html>&lt;div&gt;&lt;p&gt;Ok, I'll take a look!&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2009-03-11T11:54:00+00:00</created-at>
      <creator-id type="integer">1366</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer">21487</milestone-id>
      <number type="integer">26</number>
      <permalink>active-record-validations-and-callbacks</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">16213</project-id>
      <state>taken</state>
      <tag nil="true"></tag>
      <title>Active Record Validations and Callbacks</title>
      <updated-at type="datetime">2009-03-11T11:54:58+00:00</updated-at>
      <user-id type="integer">36376</user-id>
      <user-name>C&#225;ssio Marques</user-name>
      <creator-name>Pratik</creator-name>
      <assigned-user-name>Mike Gunderloy</assigned-user-name>
      <url>http://rails.lighthouseapp.com/projects/16213/tickets/26</url>
      <milestone-title>Guides Batch 2</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">7211</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>Done!</body>
      <body-html>&lt;div&gt;&lt;p&gt;Done!&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2009-03-11T12:25:03+00:00</created-at>
      <creator-id type="integer">1366</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer">21487</milestone-id>
      <number type="integer">26</number>
      <permalink>active-record-validations-and-callbacks</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">16213</project-id>
      <state>taken</state>
      <tag nil="true"></tag>
      <title>Active Record Validations and Callbacks</title>
      <updated-at type="datetime">2009-03-11T12:25:21+00:00</updated-at>
      <user-id type="integer">36376</user-id>
      <user-name>C&#225;ssio Marques</user-name>
      <creator-name>Pratik</creator-name>
      <assigned-user-name>Mike Gunderloy</assigned-user-name>
      <url>http://rails.lighthouseapp.com/projects/16213/tickets/26</url>
      <milestone-title>Guides Batch 2</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">7211</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>I did a complete pass on this guide, it has my +1. Good work!</body>
      <body-html>&lt;div&gt;&lt;p&gt;I did a complete pass on this guide, it has my +1. Good
work!&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2009-03-11T23:33:35+00:00</created-at>
      <creator-id type="integer">1366</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer">21487</milestone-id>
      <number type="integer">26</number>
      <permalink>active-record-validations-and-callbacks</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">16213</project-id>
      <state>taken</state>
      <tag nil="true"></tag>
      <title>Active Record Validations and Callbacks</title>
      <updated-at type="datetime">2009-03-11T23:33:37+00:00</updated-at>
      <user-id type="integer">11378</user-id>
      <user-name>Xavier Noria</user-name>
      <creator-name>Pratik</creator-name>
      <assigned-user-name>Mike Gunderloy</assigned-user-name>
      <url>http://rails.lighthouseapp.com/projects/16213/tickets/26</url>
      <milestone-title>Guides Batch 2</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">7211</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>Section 3.8 has :integer_only in the first two paragraphs instead of :only_integer&#8230;</body>
      <body-html>&lt;div&gt;&lt;p&gt;Section 3.8 has :integer_only in the first two paragraphs
instead of :only_integer&amp;#8230;&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2009-03-12T13:32:14+00:00</created-at>
      <creator-id type="integer">1366</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer">21487</milestone-id>
      <number type="integer">26</number>
      <permalink>active-record-validations-and-callbacks</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">16213</project-id>
      <state>taken</state>
      <tag nil="true"></tag>
      <title>Active Record Validations and Callbacks</title>
      <updated-at type="datetime">2009-03-12T13:32:17+00:00</updated-at>
      <user-id type="integer">31290</user-id>
      <user-name>John Yeates</user-name>
      <creator-name>Pratik</creator-name>
      <assigned-user-name>Mike Gunderloy</assigned-user-name>
      <url>http://rails.lighthouseapp.com/projects/16213/tickets/26</url>
      <milestone-title>Guides Batch 2</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">7211</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>You're right, fixed.

Thanks.</body>
      <body-html>&lt;div&gt;&lt;p&gt;You're right, fixed.&lt;/p&gt;
&lt;p&gt;Thanks.&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2009-03-12T13:37:46+00:00</created-at>
      <creator-id type="integer">1366</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer">21487</milestone-id>
      <number type="integer">26</number>
      <permalink>active-record-validations-and-callbacks</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">16213</project-id>
      <state>taken</state>
      <tag nil="true"></tag>
      <title>Active Record Validations and Callbacks</title>
      <updated-at type="datetime">2009-03-12T13:37:48+00:00</updated-at>
      <user-id type="integer">36376</user-id>
      <user-name>C&#225;ssio Marques</user-name>
      <creator-name>Pratik</creator-name>
      <assigned-user-name>Mike Gunderloy</assigned-user-name>
      <url>http://rails.lighthouseapp.com/projects/16213/tickets/26</url>
      <milestone-title>Guides Batch 2</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">7211</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body></body>
      <body-html></body-html>
      <closed type="boolean">true</closed>
      <created-at type="datetime">2009-03-14T21:14:46+00:00</created-at>
      <creator-id type="integer">1366</creator-id>
      <diffable-attributes type="yaml">--- 
:state: taken
</diffable-attributes>
      <milestone-id type="integer">21487</milestone-id>
      <number type="integer">26</number>
      <permalink>active-record-validations-and-callbacks</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">16213</project-id>
      <state>published</state>
      <tag nil="true"></tag>
      <title>Active Record Validations and Callbacks</title>
      <updated-at type="datetime">2009-03-14T21:14:49+00:00</updated-at>
      <user-id type="integer">7211</user-id>
      <user-name>Mike Gunderloy</user-name>
      <creator-name>Pratik</creator-name>
      <assigned-user-name>Mike Gunderloy</assigned-user-name>
      <url>http://rails.lighthouseapp.com/projects/16213/tickets/26</url>
      <milestone-title>Guides Batch 2</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">7211</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>Thanks for the excellent guide. Exactly what this old dog needed in order to learn new tricks. 

I have one comment about invalid? It exists for ActiveRecord::Errors and ActiveResource::Errors, but not on a class derived from ActiveRecord::Base (I'm using 2.2.2). Nor is it in the documentation for 2.2.2. 

Is this a version difference, or should the description of invalid on the model object be removed?

I'm a real newbie to Rails, so forgive me if I've missed something obvious.</body>
      <body-html>&lt;div&gt;&lt;p&gt;Thanks for the excellent guide. Exactly what this old dog needed
in order to learn new tricks.&lt;/p&gt;
&lt;p&gt;I have one comment about invalid? It exists for
ActiveRecord::Errors and ActiveResource::Errors, but not on a class
derived from ActiveRecord::Base (I'm using 2.2.2). Nor is it in the
documentation for 2.2.2.&lt;/p&gt;
&lt;p&gt;Is this a version difference, or should the description of
invalid on the model object be removed?&lt;/p&gt;
&lt;p&gt;I'm a real newbie to Rails, so forgive me if I've missed
something obvious.&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">true</closed>
      <created-at type="datetime">2009-03-27T20:38:41+00:00</created-at>
      <creator-id type="integer">1366</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer">21487</milestone-id>
      <number type="integer">26</number>
      <permalink>active-record-validations-and-callbacks</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">16213</project-id>
      <state>published</state>
      <tag nil="true"></tag>
      <title>Active Record Validations and Callbacks</title>
      <updated-at type="datetime">2009-03-27T20:38:45+00:00</updated-at>
      <user-id type="integer">52177</user-id>
      <user-name>Larry Reid</user-name>
      <creator-name>Pratik</creator-name>
      <assigned-user-name>Mike Gunderloy</assigned-user-name>
      <url>http://rails.lighthouseapp.com/projects/16213/tickets/26</url>
      <milestone-title>Guides Batch 2</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">7211</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>The guides are target for Rails 2.3, and that was only added in 2.3 I believe. 

http://github.com/rails/rails/commit/96eaeee4467a03cba3c4c30aeb6fc6afe545ae1d

Glad you liked the guide!</body>
      <body-html>&lt;div&gt;&lt;p&gt;The guides are target for Rails 2.3, and that was only added in
2.3 I believe.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://github.com/rails/rails/commit/96eaeee4467a03cba3c4c30aeb6fc6afe545ae1d&quot;&gt;
http://github.com/rails/rails/co...&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Glad you liked the guide!&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">true</closed>
      <created-at type="datetime">2009-03-27T21:26:24+00:00</created-at>
      <creator-id type="integer">1366</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer">21487</milestone-id>
      <number type="integer">26</number>
      <permalink>active-record-validations-and-callbacks</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">16213</project-id>
      <state>published</state>
      <tag nil="true"></tag>
      <title>Active Record Validations and Callbacks</title>
      <updated-at type="datetime">2009-03-27T21:26:29+00:00</updated-at>
      <user-id type="integer">643</user-id>
      <user-name>Trevor Turk</user-name>
      <creator-name>Pratik</creator-name>
      <assigned-user-name>Mike Gunderloy</assigned-user-name>
      <url>http://rails.lighthouseapp.com/projects/16213/tickets/26</url>
      <milestone-title>Guides Batch 2</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">7211</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>To be more specific, each (recent) Rails distribution comes with its own guides, which target that particular version.

The online guides (http://guides.rubyonrails.org) target the stable release at the moment. The ones in the repo target edge (http://guides.rails.info).

This very guide got published with 2.3, so there's no 2.2 version.</body>
      <body-html>&lt;div&gt;&lt;p&gt;To be more specific, each (recent) Rails distribution comes with
its own guides, which target that particular version.&lt;/p&gt;
&lt;p&gt;The online guides (&lt;a href=&quot;http://guides.rubyonrails.org&quot;&gt;http://guides.rubyonrails.org&lt;/a&gt;)
target the stable release at the moment. The ones in the repo
target edge (&lt;a href=&quot;http://guides.rails.info&quot;&gt;http://guides.rails.info&lt;/a&gt;).&lt;/p&gt;
&lt;p&gt;This very guide got published with 2.3, so there's no 2.2
version.&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">true</closed>
      <created-at type="datetime">2009-03-27T22:02:57+00:00</created-at>
      <creator-id type="integer">1366</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer">21487</milestone-id>
      <number type="integer">26</number>
      <permalink>active-record-validations-and-callbacks</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">16213</project-id>
      <state>published</state>
      <tag nil="true"></tag>
      <title>Active Record Validations and Callbacks</title>
      <updated-at type="datetime">2009-03-27T22:03:02+00:00</updated-at>
      <user-id type="integer">11378</user-id>
      <user-name>Xavier Noria</user-name>
      <creator-name>Pratik</creator-name>
      <assigned-user-name>Mike Gunderloy</assigned-user-name>
      <url>http://rails.lighthouseapp.com/projects/16213/tickets/26</url>
      <milestone-title>Guides Batch 2</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer" nil="true"></assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>There is a small inconsistency: Chapter 6, after the first block of code a helper for email address validation is announced but the next block contains the method validates_as_radio...

Thanks for the great guide though!</body>
      <body-html>&lt;div&gt;&lt;p&gt;There is a small inconsistency: Chapter 6, after the first block
of code a helper for email address validation is announced but the
next block contains the method validates_as_radio...&lt;/p&gt;
&lt;p&gt;Thanks for the great guide though!&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">true</closed>
      <created-at type="datetime">2009-04-18T13:11:46+01:00</created-at>
      <creator-id type="integer">1366</creator-id>
      <diffable-attributes type="yaml">--- 
:assigned_user: 7211
</diffable-attributes>
      <milestone-id type="integer">21487</milestone-id>
      <number type="integer">26</number>
      <permalink>active-record-validations-and-callbacks</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">16213</project-id>
      <state>published</state>
      <tag nil="true"></tag>
      <title>Active Record Validations and Callbacks</title>
      <updated-at type="datetime">2009-04-18T13:11:49+01:00</updated-at>
      <user-id type="integer">54472</user-id>
      <user-name>Marek</user-name>
      <creator-name>Pratik</creator-name>
      <assigned-user-name nil="true"></assigned-user-name>
      <url>http://rails.lighthouseapp.com/projects/16213/tickets/26</url>
      <milestone-title>Guides Batch 2</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">1366</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>Thank you Marek, fixed in http://github.com/lifo/docrails/commit/b82f3bcf39c5c6cea8461219b322563c6be5c132</body>
      <body-html>&lt;div&gt;&lt;p&gt;Thank you Marek, fixed in &lt;a href=&quot;http://github.com/lifo/docrails/commit/b82f3bcf39c5c6cea8461219b322563c6be5c132&quot;&gt;
http://github.com/lifo/docrails/...&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">true</closed>
      <created-at type="datetime">2009-04-18T15:28:45+01:00</created-at>
      <creator-id type="integer">1366</creator-id>
      <diffable-attributes type="yaml">--- 
:assigned_user: 
</diffable-attributes>
      <milestone-id type="integer">21487</milestone-id>
      <number type="integer">26</number>
      <permalink>active-record-validations-and-callbacks</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">16213</project-id>
      <state>published</state>
      <tag nil="true"></tag>
      <title>Active Record Validations and Callbacks</title>
      <updated-at type="datetime">2009-04-18T15:28:46+01:00</updated-at>
      <user-id type="integer">11378</user-id>
      <user-name>Xavier Noria</user-name>
      <creator-name>Pratik</creator-name>
      <assigned-user-name>Pratik</assigned-user-name>
      <url>http://rails.lighthouseapp.com/projects/16213/tickets/26</url>
      <milestone-title>Guides Batch 2</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">1366</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>When creating two or more related forms using nested attributes and similar mechanisms, where related objects are both new records (no ids), one can go through some rough time if 

  :validates_presence_of :foreignkey_id

or

  :validates_presence_of :foreignkey

validation is present in either model. In such cases, one is better off using database-level constraints (:allow_null =&gt; false). This should be noted in the guide as a warning item.</body>
      <body-html>&lt;div&gt;&lt;p&gt;When creating two or more related forms using nested attributes
and similar mechanisms, where related objects are both new records
(no ids), one can go through some rough time if&lt;/p&gt;
&lt;p&gt;:validates_presence_of :foreignkey_id&lt;/p&gt;
&lt;p&gt;or&lt;/p&gt;
&lt;p&gt;:validates_presence_of :foreignkey&lt;/p&gt;
&lt;p&gt;validation is present in either model. In such cases, one is
better off using database-level constraints (:allow_null =&amp;gt;
false). This should be noted in the guide as a warning item.&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">true</closed>
      <created-at type="datetime">2009-05-17T17:52:11+01:00</created-at>
      <creator-id type="integer">1366</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer">21487</milestone-id>
      <number type="integer">26</number>
      <permalink>active-record-validations-and-callbacks</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">16213</project-id>
      <state>published</state>
      <tag nil="true"></tag>
      <title>Active Record Validations and Callbacks</title>
      <updated-at type="datetime">2009-05-17T17:52:13+01:00</updated-at>
      <user-id type="integer">57190</user-id>
      <user-name>foxbunny</user-name>
      <creator-name>Pratik</creator-name>
      <assigned-user-name>Pratik</assigned-user-name>
      <url>http://rails.lighthouseapp.com/projects/16213/tickets/26</url>
      <milestone-title>Guides Batch 2</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">1366</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>Section 3.8 - validates_numericality_of - :greater_than_or_equal_to

Line 341 is missing the trailing underscore that makes the example error message italics.

Currently:
-----
* +:greater_than_or_equal_to+ - Specifies the value must be greater than or equal to the supplied value. The default error message for this option is &quot;_must be greater than or equal to {{count}}&quot;.
-----

Should be:
-----
* +:greater_than_or_equal_to+ - Specifies the value must be greater than or equal to the supplied value. The default error message for this option is &quot;_must be greater than or equal to {{count}}_&quot;.
-----</body>
      <body-html>&lt;div&gt;&lt;p&gt;Section 3.8 - validates_numericality_of -
:greater_than_or_equal_to&lt;/p&gt;
&lt;p&gt;Line 341 is missing the trailing underscore that makes the
example error message italics.&lt;/p&gt;
&lt;h2&gt;Currently:&lt;/h2&gt;
&lt;h2&gt;* +:greater_than_or_equal_to+ - Specifies the value must be
greater than or equal to the supplied value. The default error
message for this option is &quot;_must be greater than or equal to
{{count}}&quot;.&lt;/h2&gt;
&lt;h2&gt;Should be:&lt;/h2&gt;
&lt;h2&gt;* +:greater_than_or_equal_to+ - Specifies the value must be
greater than or equal to the supplied value. The default error
message for this option is &quot;&lt;em&gt;must be greater than or equal to
{{count}}&lt;/em&gt;&quot;.&lt;/h2&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">true</closed>
      <created-at type="datetime">2009-05-27T19:28:50+01:00</created-at>
      <creator-id type="integer">1366</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer">21487</milestone-id>
      <number type="integer">26</number>
      <permalink>active-record-validations-and-callbacks</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">16213</project-id>
      <state>published</state>
      <tag nil="true"></tag>
      <title>Active Record Validations and Callbacks</title>
      <updated-at type="datetime">2009-05-27T19:28:52+01:00</updated-at>
      <user-id type="integer">58098</user-id>
      <user-name>Joseph Pecoraro</user-name>
      <creator-name>Pratik</creator-name>
      <assigned-user-name>Pratik</assigned-user-name>
      <url>http://rails.lighthouseapp.com/projects/16213/tickets/26</url>
      <milestone-title>Guides Batch 2</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">1366</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>Well crap, I didn't know it could be Markdown! Sorry about that Guys.  I can't seem to delete the comment either. _Doh._

Current:

    * +:greater_than_or_equal_to+ - Specifies the value must be greater than or equal to the supplied value. The default error message for this option is &quot;must be greater than or equal to {{count}}&quot;.

Should Be:

    * +:greater_than_or_equal_to+ - Specifies the value must be greater than or equal to the supplied value. The default error message for this option is &quot;must be greater than or equal to {{count}}_&quot;.</body>
      <body-html>&lt;div&gt;&lt;p&gt;Well crap, I didn't know it could be Markdown! Sorry about that
Guys. I can't seem to delete the comment either. &lt;em&gt;Doh.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Current:&lt;/p&gt;
&lt;pre&gt;
&lt;code&gt;* +:greater_than_or_equal_to+ - Specifies the value must be greater than or equal to the supplied value. The default error message for this option is &quot;must be greater than or equal to {{count}}&quot;.&lt;/code&gt;
&lt;/pre&gt;
&lt;p&gt;Should Be:&lt;/p&gt;
&lt;pre&gt;
&lt;code&gt;* +:greater_than_or_equal_to+ - Specifies the value must be greater than or equal to the supplied value. The default error message for this option is &quot;must be greater than or equal to {{count}}_&quot;.&lt;/code&gt;
&lt;/pre&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">true</closed>
      <created-at type="datetime">2009-05-27T19:30:25+01:00</created-at>
      <creator-id type="integer">1366</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer">21487</milestone-id>
      <number type="integer">26</number>
      <permalink>active-record-validations-and-callbacks</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">16213</project-id>
      <state>published</state>
      <tag nil="true"></tag>
      <title>Active Record Validations and Callbacks</title>
      <updated-at type="datetime">2009-05-27T19:30:28+01:00</updated-at>
      <user-id type="integer">58098</user-id>
      <user-name>Joseph Pecoraro</user-name>
      <creator-name>Pratik</creator-name>
      <assigned-user-name>Pratik</assigned-user-name>
      <url>http://rails.lighthouseapp.com/projects/16213/tickets/26</url>
      <milestone-title>Guides Batch 2</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">1366</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>Thanks Joseph, fixed in http://github.com/lifo/docrails/commit/9c0064dd981be9e09df2e902550d0e0ce3e0d30b</body>
      <body-html>&lt;div&gt;&lt;p&gt;Thanks Joseph, fixed in &lt;a href=
&quot;http://github.com/lifo/docrails/commit/9c0064dd981be9e09df2e902550d0e0ce3e0d30b&quot;&gt;
http://github.com/lifo/docrails/commit/9c0064dd981be9e09df2e902550d...&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">true</closed>
      <created-at type="datetime">2009-05-27T21:48:27+01:00</created-at>
      <creator-id type="integer">1366</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer">21487</milestone-id>
      <number type="integer">26</number>
      <permalink>active-record-validations-and-callbacks</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">16213</project-id>
      <state>published</state>
      <tag nil="true"></tag>
      <title>Active Record Validations and Callbacks</title>
      <updated-at type="datetime">2009-05-27T21:48:31+01:00</updated-at>
      <user-id type="integer">11378</user-id>
      <user-name>Xavier Noria</user-name>
      <creator-name>Pratik</creator-name>
      <assigned-user-name>Pratik</assigned-user-name>
      <url>http://rails.lighthouseapp.com/projects/16213/tickets/26</url>
      <milestone-title>Guides Batch 2</milestone-title>
    </version>
  </versions>
</ticket>
