· 8 years ago · Jun 24, 2018, 10:38 AM
1## code!
2usr/bin/env ruby
3require 'rubygems'
4require 'dm-core'
5require 'dm-validations'
6
7
8DataMapper.setup(:default, "sqlite3:///#{Dir.pwd}/test.db")
9DataObjects::Sqlite3.logger = DataObjects::Logger.new(STDOUT, 0)
10
11class Foo
12 include DataMapper::Resource
13 property :id, Serial
14 property :foo, Integer, :format => /[0-9]+/
15
16end
17
18DataMapper.auto_migrate!
19
20f = Foo.new(:foo => 33)
21f.save
22p f.errors
23
24## stdout
25Fri, 22 May 2009 04:37:42 GMT ~ debug ~ (0.003803) DROP TABLE IF EXISTS "foos"
26Fri, 22 May 2009 04:37:42 GMT ~ debug ~ (0.000074) PRAGMA table_info('foos')
27Fri, 22 May 2009 04:37:42 GMT ~ debug ~ (0.000060) SELECT sqlite_version(*)
28Fri, 22 May 2009 04:37:42 GMT ~ debug ~ (0.004777) CREATE TABLE "foos" ("id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT, "foo" INTEGER)
29#<DataMapper::Validate::ValidationErrors:0x28b2d48c @errors={:foo=>["Foo has an invalid format"]}>