此示例无法验证是否存在标题:
require 'rubygems'
require 'dm-core'
require 'dm-migrations'
require 'dm-validations'
db_name = 'rvtest.sqlite'
DataMapper::Logger.new($stdout, :debug)
DataMapper.setup(:default, 'sqlite://' + Dir.pwd + '/' + db_name)
class Task
include DataMapper::Resource
property :id, Serial
property :title, String
validates_presence_of :title
end
DataMapper.finalize
DataMapper.auto_upgrade!
require 'rubygems'
require 'dm-core'
require 'dm-migrations'
require 'dm-validations'
db_name = 'rvtest.sqlite'
DataMapper::Logger.new($stdout, :debug)
DataMapper.setup(:default, 'sqlite://' + Dir.pwd + '/' + db_name)
class Task
include DataMapper::Resource
property :id, Serial
property :title, String, :required => true
end
DataMapper.finalize
DataMapper.auto_upgrade!
为什么这些工作方式不同?如果我进入irb,需要这个文件并键入
Task.new.save!
第一个回来了
true
第二个
false
.