title: How to define boolean field for a rails migration
body: <p>I want to add a boolean value field ("is_public") to the table "my_model". Currently I can use this:</p>
  
  <pre><code>class AddPublicToDream &lt; ActiveRecord::Migration
    def self.up
      add_column :my_model, :is_public, :string
    end
  
    def self.down
      remove_column :my_model, :is_public, :string
    end
  
  end
  </code></pre>
  
  <p>Then I can assign "true" or "false" to mymodel.is_public in controllers.</p>
  
  <p>Can I substitute :string with :boolean to achieve the same effect? Would it save some database space comparing to :string?</p>