<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/'><id>tag:blogger.com,1999:blog-2813261110497121234.post7444119380546155322..comments</id><updated>2008-01-28T07:38:17.161-08:00</updated><title type='text'>Comments on Beech Bonanza: The evolution of a Domain in rails: Part 2 Separat...</title><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://www.shaneharvie.com/feeds/7444119380546155322/comments/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2813261110497121234/7444119380546155322/comments/default'/><link rel='alternate' type='text/html' href='http://www.shaneharvie.com/2008/01/evolution-of-domain-in-rails-part-2.html'/><author><name>Shane Harvie</name><uri>http://www.blogger.com/profile/01016971334424471677</uri><email>noreply@blogger.com</email></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>3</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-2813261110497121234.post-5375023149778274492</id><published>2008-01-28T07:38:17.161-08:00</published><updated>2008-01-28T07:38:17.161-08:00</updated><title type='text'>Code sample I mean...</title><content type='html'>Code sample I mean...</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2813261110497121234/7444119380546155322/comments/default/5375023149778274492'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2813261110497121234/7444119380546155322/comments/default/5375023149778274492'/><link rel='alternate' type='text/html' href='http://www.shaneharvie.com/2008/01/evolution-of-domain-in-rails-part-2.html?showComment=1201534697161#c5375023149778274492' title=''/><author><name>CARFIELD</name><uri>http://www.blogger.com/profile/13094952618057460795</uri><email>noreply@blogger.com</email></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://www.shaneharvie.com/2008/01/evolution-of-domain-in-rails-part-2.html' ref='tag:blogger.com,1999:blog-2813261110497121234.post-7444119380546155322' source='http://www.blogger.com/feeds/2813261110497121234/posts/default/7444119380546155322' type='text/html'/></entry><entry><id>tag:blogger.com,1999:blog-2813261110497121234.post-1784111592137110867</id><published>2008-01-28T03:46:27.768-08:00</published><updated>2008-01-28T03:46:27.768-08:00</updated><title type='text'>I've ended up building my own little callbacks for...</title><content type='html'>I've ended up building my own little callbacks for this kind of tasks. For example, I have users that can send messages to each other (as in IM messages, not Ruby method calls), so in my User R objects I now have macros like &lt;I&gt;before_send&lt;/I&gt;, &lt;I&gt;before_receive&lt;/I&gt;, &lt;I&gt;after_send&lt;/I&gt; and &lt;I&gt;after_receive&lt;/I&gt;, which get passed a reference to the message object. This way I can have different User subclasses react in different ways to different message types, etc., and the underlying message sending code remains untouched.&lt;BR/&gt;&lt;BR/&gt;Basically, I try to not rely on AR too much when my domain is not really just about CRUD.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2813261110497121234/7444119380546155322/comments/default/1784111592137110867'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2813261110497121234/7444119380546155322/comments/default/1784111592137110867'/><link rel='alternate' type='text/html' href='http://www.shaneharvie.com/2008/01/evolution-of-domain-in-rails-part-2.html?showComment=1201520787768#c1784111592137110867' title=''/><author><name>ismaSan</name><uri>http://www.blogger.com/profile/12478978326569335706</uri><email>noreply@blogger.com</email></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://www.shaneharvie.com/2008/01/evolution-of-domain-in-rails-part-2.html' ref='tag:blogger.com,1999:blog-2813261110497121234.post-7444119380546155322' source='http://www.blogger.com/feeds/2813261110497121234/posts/default/7444119380546155322' type='text/html'/></entry><entry><id>tag:blogger.com,1999:blog-2813261110497121234.post-4864075656896452209</id><published>2008-01-28T00:42:43.596-08:00</published><updated>2008-01-28T00:42:43.596-08:00</updated><title type='text'>If there is example then it would be great...</title><content type='html'>If there is example then it would be great...</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2813261110497121234/7444119380546155322/comments/default/4864075656896452209'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2813261110497121234/7444119380546155322/comments/default/4864075656896452209'/><link rel='alternate' type='text/html' href='http://www.shaneharvie.com/2008/01/evolution-of-domain-in-rails-part-2.html?showComment=1201509763596#c4864075656896452209' title=''/><author><name>Carfeld Yim</name><uri>http://www.blogger.com/profile/14027134382703629417</uri><email>noreply@blogger.com</email></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://www.shaneharvie.com/2008/01/evolution-of-domain-in-rails-part-2.html' ref='tag:blogger.com,1999:blog-2813261110497121234.post-7444119380546155322' source='http://www.blogger.com/feeds/2813261110497121234/posts/default/7444119380546155322' type='text/html'/></entry></feed>