Sha256: c5a3183b0706c181a5c08b966e55d5cbbb3f691bbb38f122bc5ad1221bb8a98c

Contents?: true

Size: 718 Bytes

Versions: 4

Compression:

Stored size: 718 Bytes

Contents

require 'sequel'

DB = Sequel.connect("sqlite:///#{__DIR__}/../blog.db")

class Entry < Sequel::Model(:entry)
  set_schema do
    primary_key :id

    time :created
    time :updated
    text :title
    text :content
  end

  def self.add(title, content)
    create :title => title, :content => content,
      :created => Time.now, :updated => Time.now
  end

  def update(title = title, content = content)
    self.title, self.content, self.updated = title, content, Time.now
    save
  end
end

begin
  Entry.create_table!
rescue Sequel::DatabaseError => e
  if e.message !~ /table.*already exists/
    raise e
  end
end


if Entry.empty?
  Entry.add 'Blog created', 'Exciting news today, this blog was created'
end

Version data entries

4 entries across 4 versions & 2 rubygems

Version Path
Pistos-ramaze-2009.01 examples/app/blog/model/entry.rb
Pistos-ramaze-2009.02 examples/app/blog/model/entry.rb
ramaze-2009.01 examples/app/blog/model/entry.rb
ramaze-2009.02 examples/app/blog/model/entry.rb