Heroku経由でSinatraを使ってみているのですが、ModelとしてSequelを使ってみることにしました。 Userクラスを作る DBをオンメモリにしておいて、テーブル作成・クラスの宣言 1 % irb 2 require 'rubygems' 3 require 'sequel' 4 5 DB = Sequel.sqlite 6 DB << "CREATE TABLE users (id INTEGER PRIMARY KEY, name VARCHAR(255) not NULL)" 7 8 class User < Sequel::Model 9 end 1 User.create(:name => 'satoko') 2 3 User.find(:name => 'satoko') 4 User.find(:id => 1).update(:name =
Rubyにおける軽量なデータベースツールキットとして、なかなかお手軽なSequelですが、実際に使うにあたっていくつか悩んだポイントがあったので、備忘録としてその解決法をメモしておきます。 なお、この記事はRuby 1.9.1p378とSequel 3.8.0の組み合わせを対象として書いています。 モデルの定義前にDB接続をしたくない SequelにもActiveRecordパターンに基づいたモデルの仕組みが用意されていますが、「モデルを定義した時点でデータベースへの接続が存在していなければならない」という制約があります。 つまり、 require 'sequel' Sequel.connect('sqlite://test.db') class User < Sequel::Model; end p User.all は動きますが、 require 'sequel' class User
Objecttank@rubyのDBアクセスライブラリをDBIからSequelに移行中。Sequelの参考ページhttp://sequel.rubyforge.org/http://www.slideshare.net/zhesto/ruby-off-rails-japanesehttp://xxx.mostevildanceclassics.com/page/r/SequelRubyインストール sudo gem install sequel とりあえず実行sequelのコマンドラインツール。railsのscript/consoleのようなもの。 sequel mysql://user:password@localhost/dbname DBという名前の変数に接続オブジェクトが格納されるテーブル名=userがあったとすると、、、 DB[:user].filter(:id => 10).a
シンプルな実装。 モデルクラスが必須ではなく、あるテーブルを表すオブジェクトを経由してDB操作を行う。 デザインパターンは、Table Data Gatewayに対応。 標準添付のSequel::Modelによって、モデルクラスを使うことも可能。 マイグレーション用のコマンドラインツールが付属。 モデルを使わない場合 require 'rubygems' require 'sequel' # DB接続 DB = Sequel.sqlite('book-sq.db') # スキーマ作成 unless DB.table_exists?(:books) DB.create_table(:books) do primary_key :id string :title integer :year end end # データの作成 DB[:books].insert(:title => "初めてのRu
来年も作りたい!ふきのとう料理を満喫した 2024年春の記録 春は自炊が楽しい季節 1年の中で最も自炊が楽しい季節は春だと思う。スーパーの棚にやわらかな色合いの野菜が並ぶと自然とこころが弾む。 中でもときめくのは山菜だ。早いと2月下旬ごろから並び始めるそれは、タラの芽、ふきのとうと続き、桜の頃にはうるい、ウド、こ…
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く