-
Notifications
You must be signed in to change notification settings - Fork 0
tokuhirom/data-model-tutorial
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
* Data::Model とは id:yappo さんがつくっている O/R Mapper。新興のものでチュートリアル的なものがない ので自分でかいてみることにしました。 とはいえ、Data::Model 自体がまだまだαクオリティですので、チュートリアルもてぬき です。 * つかってみる ** DBI を対象につかってみる Data::Model は、Data::Model のスキーマ定義からCREATE TABLE 文を発行することができ ます。なので、まずはスキーマ定義を Perl で書きます。 see lib/Neko/DB/User.pm カラムの詳細な定義は、別ファイルにします。 see lib/Neko/Columns.pm カラムの定義を別ファイルにするというところは、他の O/R Mapper とのおおきな違いで すね。これによって得られるメリットは「カラム定義の共通化」ですね。たとえば、レコー ドの作成日付を保存する created_on なんていうのは複数のテーブルで同じ定義をつかい たいものですから、共通化できると便利です。 ** スキーマ定義を実際につかう これをよびだし、CREATE TABLE 文を発行するには、 see script/dump_schema.pl のようにします。driver を各 schema に対して発行するというあたりがポイントになる かとおもいます。わずらわしいですが、ここはぐっと我慢しましょう。 see script/crud.pl に、簡単な SELECT/INSERT/UPDATE/DELETE の例をのせておきました。 ** Memcached をつかってみる Data::Model ではストレージとして SQLite の他に memcached protocol によるデータの 保存にも対応しています。ここではいわゆる hash database 的なものをつかうことが想定 されています。Tokyo Tyrant などをストレージとして、Data::Model でデータをあつかえ るということです。 Memcached をつかう場合の例は下記のスクリプトにおいてあります。 see script/memcached.pl ** キャッシュを使ってみる DBI や Memcached のストレージへのアクセスするさいに Memcached などのキャッシュを 挟む事が出来ます。の、予定。
About
the tutorial documents for Data::Model
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published