2014-06-06 49 views
0

我創建了一個腳手架,但我無法遷移它。 當我運行rake db:migrate我得到一個錯誤,說 耙中止!在終端,當我運行瀏覽器它帶來的錯誤 遷移正在等待;運行'bin/rake db:migrate RAILS_ENV = development'來解決這個問題。但它不能解決它。ActiveRecord :: PendingMigrationError rails 4.0.3

上午使用軌4.0.3和我試圖運行bundle exec rake:migrate和更新包使用bundle update這都給了我同樣的錯誤。 我schema.rb是UPTODATE

ActiveRecord::PendingMigrationError [running rails4]推薦我不喜歡rake db:reset一個應用程序復位,但它也抱怨掛起的遷移,我不得不重置之前完成。

+0

更具體。在此處添加您的遷移代碼。檢查你是否運行過rake db:create before。 – cristian

+0

mus有中止的原因。做這個rake db:migrate --trace然後提供關於墮胎的更多信息。 – Acacia

+1

由於您正在開發中,請刪除您的數據庫,重新創建它,然後像這樣運行所有遷移:'rake db:drop db:create db:migrate --trace'。如果你這樣做會發生什麼? – cristian

回答

0

我使用rails generate scaffold Product \ title:string description:text image_url:string price:decimal創建了一個產品表,它創建瞭如下面類中所示的列。

我剛纔意識到有一個未定義的方法'字符串';檢查下面的代碼t.string :\評論它做了這項工作。

class CreateProducts < ActiveRecord::Migration

def change

CREATE_TABLE:做產品| T |

#t.string :\ 
    t.string :title 
    t.text :description 
    t.string :image_url 
    t.decimal :price, :precision =>8, :scale =>2 
t.timestamps 
end