title: What is happening in this Ruby code?
body: <p>Given the following example taken from <a href="http://guides.rubyonrails.org/getting_started.html" rel="nofollow">here</a>:</p>
  
  <pre><code>class Post &lt; ActiveRecord::Base
    attr_accessible :content, :name, :title
  
    validates :name,  :presence =&gt; true
    validates :title, :presence =&gt; true,
                      :length =&gt; { :minimum =&gt; 5 }
  end
  </code></pre>
  
  <p>I understand we're creating a class based on the <code>ActiveRecord::Base</code> class. On the next line, what is happening with <code>attr_accessible :content, :name, :title</code>? Are we declaring a variable, creating a method, or calling one? What are the expressions like <code>:some_variable</code>?  What are the colons for? Could someone explain in basic understanding what is happening here?</p>