examples/scheme.rb in swift-0.4.3 vs examples/scheme.rb in swift-0.5.0

- old
+ new

@@ -1,17 +1,26 @@ #!/usr/bin/env ruby -require_relative '../lib/swift' + +$:.unshift(File.join(File.dirname(__FILE__), '..', 'lib')) + require 'pp' +require 'swift' +require 'swift/migrations' +require 'swift/validations' class User < Swift::Scheme store :users attribute :id, Swift::Type::Integer, serial: true, key: true attribute :name, Swift::Type::String attribute :email, Swift::Type::String attribute :active, Swift::Type::Boolean attribute :created, Swift::Type::Time, default: proc { Time.now } attribute :optional, Swift::Type::String, default: 'woot' + + validations do |errors| + errors << [:name, 'is blank'] if name.to_s.empty? + end end # User adapter = ARGV.first =~ /mysql/i ? Swift::DB::Mysql : Swift::DB::Postgres puts "Using DB: #{adapter}" @@ -25,10 +34,9 @@ User.create name: 'Apple Arthurton', email: 'apple@arthurton.local' User.create name: 'Benny Arthurton', email: 'benny@arthurton.local' puts '', '-- all --' pp User.all.to_a -# pp User.all(':name like ?', '%Arthurton').to_a puts '', '-- first --' pp User.first(':name like ?', '%Arthurton') puts '', '-- get --'