我正在使用Sinatra的DataMapper gem并遵循以下教程: http://net.tutsplus.com/tutorials/ruby/ruby-for-newbies-working-with-datamapper/
我正在连接数据库并进行迁移:
DataMapper.setup :default, "sqlite://#{Dir.pwd}/ex2.db"
DataMapper.auto_migrate!
我的数据模型:
class User
include DataMapper::Resource
property :id , Serial
property :username , String
property :email , String
end
我正在使用此命令执行:
rackup config.ru
然而,当我到达这一行时:
User.create username: "JoeSchmo", email: "joe@schmo.com"
我收到错误:
Rack::Lint::LintError: Status must be >=100 seen as integer
知道为什么会这样吗?
答案 0 :(得分:3)
尝试删除SQLite数据库 - data_mapper中似乎存在更改数据结构和使用旧数据的错误。对我来说,删除数据库并设置新的数据后,错误就消失了。
答案 1 :(得分:0)
我对Sinatra和datamapper有同样的问题。使用“new”关键字创建我的记录而不是“创建”,然后逐个添加属性为我工作。希望你觉得它很有用。