Skip to content

Instantly share code, notes, and snippets.

@krainboltgreene
Created August 18, 2012 07:46
Show Gist options
  • Select an option

  • Save krainboltgreene/3385101 to your computer and use it in GitHub Desktop.

Select an option

Save krainboltgreene/3385101 to your computer and use it in GitHub Desktop.
[1] pry(main)> require 'sqlite3'
=> true
[2] pry(main)> require 'sequel'
=> true
[3] pry(main)> db = Sequel.sqlite
=> #<Sequel::SQLite::Database: {:adapter=>:sqlite}>
[4] pry(main)> db.create_table :example do
[4] pry(main)* primary_key :id
[4] pry(main)* String :test
[4] pry(main)* end
=> nil
[5] pry(main)> db.tables
=> [:example]
[6] pry(main)> class Example < Sequel::Model
[6] pry(main)* end
=> nil
[7] pry(main)> e = Example.new
=> #<Example @values={}>
[8] pry(main)> e.test = "Example"
NoMethodError: undefined method `test=' for #<Example @values={}>
from (pry):12:in `__pry__'
$ cat models.rb
require_relative 'models/user'
Database.create_table :users do
primary_key :id
String :email
String :instapaper_id
String :name
end unless Database.table_exists? :users
$ cat models/user.rb
class User < Sequel::Model
end
$ irb
[1] pry(main)> require './models'
=> true
[2] pry(main)> User
=> User
[3] pry(main)> u = User.new
=> #<User @values={}>
[4] pry(main)> u.name = "Fred"
NoMethodError: undefined method `name=' for #<User @values={}>
from (pry):4:in `__pry__'
[5] pry(main)> Database
=> #<Sequel::SQLite::Database: {:adapter=>:sqlite}>
[6] pry(main)> Database.tables
=> [:users]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment