title: From a high-level, how do I allow non-logged in users to do certain things in my app - Rails 3
body: <p>As a non-logged in user, you can see one specific action of a model.</p>
  
  <p>E.g. see: <a href="http://compversions.com/stages/40/compare?ck=o3NJC18Kj0LPe-vOpBfw&amp;sk=rZFmkaDkN2U7cCx_69OT" rel="nofollow">http://compversions.com/stages/40/compare?ck=o3NJC18Kj0LPe-vOpBfw&amp;sk=rZFmkaDkN2U7cCx_69OT</a></p>
  
  <p>However, if you try to add any comments or vote up or down any of the image, it doesn't allow you to do so.</p>
  
  <p>How would I approach this ?</p>
  
  <p>I know the simple answer is just to add an <code>before_filter :except =&gt; :create</code> on my <code>Comments</code> controller, but is that the only way ? That seems like using a sledgehammer to kill an ant. That would allow any non-logged in user to leave any comment (and access other comments) throughout my app, no ?</p>
  
  <p>How do I restrict it to this one model (<code>stage</code>) and action (<code>compare</code>)?</p>
  
  <p>Thanks.</p>
  
  <p>P.S. I am using devise &amp; decl_auth for authentication and authorization respectively.</p>