Rails: I update migration file then run db:migrate, but my schema isn't updating

前端 未结 7 1272
生来不讨喜
生来不讨喜 2020-12-24 13:27

I\'m trying to add an extra field to one of my tables.

I\'ve added the field in the migration file (under db\\migrate), then ran \'rake db:migrate\' which ran withou

7条回答
  •  失恋的感觉
    2020-12-24 14:10

    I did the same thing, I wanted to change a field name and instead of this:

    class CreateComments < ActiveRecord::Migration
      def change
        create_table :comments do |t|
          t.string :commenter
          t.text :body
    
          # this line adds an integer column called `article_id`.
          t.references :article, index: true
    
          t.timestamps
        end
      end
    end
    

    I changed

      t.text :body
    

    to

    t.text :comment_body
    

    I tried doing rake

    db:migrate
    

    nothing happened as in it went to the command prompt again without any output..., i looked at stack overflow and this guided me to do rake

    db:migrate:redo
    

    with out put

    == 20141129044056 CreateComments: reverting ===================================
    -- drop_table(:comments)
       -> 0.0000s
    == 20141129044056 CreateComments: reverted (0.0886s) ==========================
    
    == 20141129044056 CreateComments: migrating ===================================
    -- create_table(:comments)
       -> 0.0040s
    == 20141129044056 CreateComments: migrated (0.0040s) ==========================
    

    and then I loaded my page/controller with commenter_body instead of body and it loaded perfectly.

    I think this is also a solution to the same. I dont know if there is any issue in the underneath workings in the model/DB( i am still very new to RoR,my third day actually...)

提交回复
热议问题