title: SQLite migration removes 'add_index' and 'add_foreign_key' from schema.rb file
body: <p>I use SQLite3 and MySQL on the same Rails project but on two different computers. I noticed that the <code>schema.rb</code> which is generated when I run all migrations looks different for both environments. When I run the migrations in the SQLite3 environment the following <strong>statements are removed</strong> from the <code>schema.rb</code> file.</p>
  
  <pre><code>add_index "places", ["user_id"], :name =&gt; "places_user_id_fk"
  add_foreign_key "places", "users", :name =&gt; "places_user_id_fk"
  </code></pre>
  
  <p>Please note, that I use the <a href="https://github.com/matthuhiggins/foreigner" rel="nofollow">foreigner gem</a> which extends migrations with <code>add_foreign_key</code> and <code>remove_foreign_key</code>.</p>
  
  <p>Here are the migrations and model relevant to the problem:</p>
  
  <pre><code># 20130123004056_create_places.rb
  class CreatePlaces &lt; ActiveRecord::Migration
    def change
      create_table :places do |t|
        t.string :name
        t.string :location
        t.integer :user_id
        t.timestamps
      end
    end
  end
  </code></pre>
  
  <p>...</p>
  
  <pre><code># 20130123234250_add_foreign_key.rb
  class AddForeignKey &lt; ActiveRecord::Migration
    def change
      add_foreign_key(:places, :users)
    end
  end
  </code></pre>
  
  <p>...</p>
  
  <pre><code># user.rb
  class User &lt; ActiveRecord::Base
    has_many :places
  end
  </code></pre>
  
  <p>...</p>
  
  <pre><code># place.rb
  class Place &lt; ActiveRecord::Base
    belongs_to :user    
  end
  </code></pre>
  
  <p><strong>Question:</strong> How can I define the relationship between <code>users</code> and <code>places</code> in a way both SQLite3 and MySQL can handle it?</p>