Rack :: Lint :: LintError:状态必须> = 100,视为整数

eta*_*luz 5 sqlite datamapper sinatra

我正在使用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!
Run Code Online (Sandbox Code Playgroud)

我的数据模型:

class User
    include DataMapper::Resource

    property :id       , Serial
    property :username , String
    property :email    , String
end
Run Code Online (Sandbox Code Playgroud)

我正在使用此命令执行:

rackup config.ru
Run Code Online (Sandbox Code Playgroud)

但是,当我到达这一行时:

User.create username: "JoeSchmo", email: "joe@schmo.com"
Run Code Online (Sandbox Code Playgroud)

我收到错误:

Rack::Lint::LintError: Status must be >=100 seen as integer
Run Code Online (Sandbox Code Playgroud)

知道为什么会这样吗?

mat*_*ttl 1

你使用的是哪个版本的 ruby​​,因为如果你使用的是低于 1.9 的版本,则必须=>不使用哈希构造函数:,并将冒号移到开头,因为它是一个符号。

User.create :username => "JoeSchmo", :email => "joe@schmo.com"
Run Code Online (Sandbox Code Playgroud)