【发布时间】:2011-11-03 06:27:35
【问题描述】:
不知道为什么我的日志中出现此错误。这个错误经常发生,但并非始终如一,我不知道为什么。这是我的代码:
require 'rubygems'
require 'sinatra'
require 'data_mapper'
DataMapper::Logger.new($stdout, :debug)
DataMapper.setup(:default, 'sqlite3::memory:')
class LevelStatus
include DataMapper::Resource
property :id, Serial
property :italian, Float
property :hairbender, Float
property :decaf, Float
end
DataMapper.finalize
LevelStatus.auto_migrate!
post '/update-levels' do
@status = LevelStatus.create(
:italian => params[:italian],
:hairbender => params[:hairbender],
:decaf => params[:decaf]
)
status 200
end
当我 POST 到 /update-levels 时,有时我会收到消息:
DataObjects::SyntaxError - no such table: level_statuses
导致此错误的代码有什么问题?
【问题讨论】:
-
如果您指定一个文件而不是使用 SQLite3 内存存储,它会起作用吗?
-
类似的问题(和可能的解释)在这里:stackoverflow.com/questions/6904298/…
-
啊,看来内存中的 SQLite 数据库是问题所在。将其更改为文件支持的数据库应该可以解决问题。我会试试的。
标签: ruby sinatra ruby-datamapper