====== AlPersist データ永続化モジュール ====== ===== 概要 ===== * データ永続化のためクラスです。 * CRUDの各メソッドを持ちます。 * 実際の保存先として、ファイルやRDBなどのバリエーションがあります。 {{:alpersist:data-persist.png?nolink|}} ===== 想定する用途 ===== * RDBに保存するデータのCRUD。ウェブアプリなどでページングが必要な場合は、特に便利です。 * シェルスクリプト形式の設定ファイルの編集。 ===== 注意点 ===== * O/R mapper のように振る舞いますが、目標点はそこではなく、単にCRUD+αの機能のみです。したがって場合によっては中途半端に感じられるかもしれません。本格的なO/R mapperが使いたければ、それ用に設計されたものを別途利用すべきです。 * よく設計されたRDBであれば、SQLを直接発行して操作するほうが効率的、かつ全体がシンプルになります。そう判断できる場合は、このクラスの下層にあるRDB wrapperを直接使うほうが良いと思われます。 ===== 簡単な使い方 ===== AlPersistSQLite(SQLite版)の例です。 require "al_persist_sqlite" DSN = "/tmp/testdb.sqlite" @db = AlPersistSqlite.connect( DSN ) @persist = @db.table( "table1", :id ) @persist.create( {:id=>1, :name=>"TARO", :age=>20} ) @persist.read( :id=>1 ) p @persist.values # {:id=>1, :name=>"TARO", :age=>20} @persist.update( {:id=>1, :age=>21} ) @persist.delete( {:id=>1 } ) ===== 機能詳細 ===== * [[オブジェクトの生成]] * [[CRUD]] * [[検索]] * [[AlPersistをベースにモデルクラスを生成]] ===== クラスツリー ===== {{:data_persist:al_persist_class.png?nolink|}}