Heroku + Sinatra + Datamapper - PullRequest
       41

Heroku + Sinatra + Datamapper

1 голос
/ 08 ноября 2010

У меня проблемы с развертыванием приложения Sinatra + DataMapper в Heroku.Приложение работает локально, но его развертывание взрывается.

Вот ошибка:

Целочисленный идентификатор с явным: опция serial устарела, вместо этого используйте Serial (./hello.rb:15) / home/slugs/339253_c667ceb_65a5-45e31e8c-0236-4d03-96ec-a59bdabdf788/mnt/.gems/gems/dm-migrations-1.0.2/lib/dm-migrations/adapters/dm-postgres-adapter.rb:84:inproperty_schema_hash ': неверное значение для диапазона (ArgumentError)

Код выглядит следующим образом:

Class Post
  include DataMapper::Resource

  property :id,    Integer, :serial => true
  property :title, String
end

Post.auto_migrate!
first_post = Post.new
first_post.title = "First!"
first_post.save

Это проблема с версионированием гемов, или я что-то упустил?

Ответы [ 4 ]

3 голосов
/ 02 октября 2011

Попробуйте вместо этого:

Class Post
  include DataMapper::Resource

  property :id,    Serial
  property :title, String
end
3 голосов
/ 09 ноября 2010

Кажется, вы используете другую версию datamapper локально.

Проверьте вашу локальную версию: gem list --local

Также используйте Serial вместо Integer, как было предложено.

0 голосов
/ 13 ноября 2010

Вы сделали Bundle Install и затем зафиксировали свой Gemfile и Gemfile.lock?если нет, то Heroku не знал бы, какие драгоценности вы хотели бы использовать, поэтому просто использовал системные драгоценные камни по умолчанию.Я думаю, что они не совсем совпадают, и поэтому он взорвался.

0 голосов
/ 09 ноября 2010

Вы используете ту же версию DM локально и на героку?

...