所以Iv在rails上创建了一个基本应用程序并将其上传到heroku。一切都在我的本地机器上完美运行,包括friendly_Id gem。
我把我的应用程序推到了heroku,一切正常,直到我尝试发布我收到错误的内容:
NoMethodError (undefined method `slug' for #<Post:0x007f6aedb2d248>):
我的所有模型和关系都设置正确如下:
Post.rb
extend FriendlyId
friendly_id :title, use: :slugged
我还进行了迁移
def change
add_column :tutorials, :slug, :string
end
本地我犯了什么错误就是删除了迁移文件,但该列保留在postgresql
数据库中。所以我删除了列slug
并创建了一个新的迁移并再次添加了该列,并且它在本地完全正常。
现在,当我在本地计算机上查看我的数据库模式时,它包含了slug列。
分贝/ schema.rb
create_table "post", force: :cascade do |t|
t.string "slug"
end
但是当我在heroku上检查我的db模式时,slug
列不存在。我甚至推动了所有更改,当我运行heroku run rake db:migrate
时出现错误:
PG::UndefinedColumn: ERROR: column "slug" of relation "posts" does not exist
有关如何将此列添加到heroku上的任何帮助?