title: Helper methods for models in Rails
body: <p>Is there a proper place for helper methods for models in Rails? There are helper methods for controllers and views, but I'm not sure where the best place to put model helper methods. Aside from adding a method to <code>ActiveRecord::Base</code>, which I'd prefer not to.</p>
  
  <p><strong><em>UPDATE</em></strong>: It seems Concerns make a lot of sense. Here's an example of what I want. Certain models can never be deleted, so I add a callback that always throws an exception:</p>
  
  <pre><code>before_destroy :nope
  def nope
    raise 'Deleting not allowed'
  end
  </code></pre>
  
  <p>With concerns, I could do something like this?</p>
  
  <pre><code>class MyModel &lt; ActiveRecord::Base
    include Undeletable
  end
  
  module Undeletable
      extend ActiveSupport::Concern
  
      included do 
        before_destroy :nope 
      end
  
      def nope
        raise 'Deleting not allowed'
      end
  end
  </code></pre>
  
  <p>Is this the Rails way of doing this?</p>