query: tag:Gears

Gears を使うには

  1. gears_init.js の読み込み
  2. 低レベルAPIを駆使

という面倒な作業が必要になる。

具体的には

html>>

<<--

javascript>>
var db = google.gears.factory.create('beta.database');
db.open("database-demo");
var rs = db.execute("select name from users");
while(rs.isValidRow()) {
name = rs.fieldByName('name');
rs.next();
}
rs.close();
db.close();
<<--

のようなコードが必要になり、今日日こういうのは書きたくない。
そこで、

active_record.js を使う

Aptana が提供してる activejs プロジェクトの ActiveRecord ライブラリを利用すると、以下のようにすっきりする。

html>>

<<--

javascript>>
ActiveRecord.connect(ActiveRecord.Adapters.Gears,'database-demo');
var User = ActiveRecord.create('users', {name:''});
User.create({name:'maiha'});
<<--

RailsのARを忠実にJavaScriptへ移植してあるため、
ARに慣れていればほぼドキュメントなしで使えるのが嬉しい。

javascript>>
maiha = User.findByName('maiha'); // Dynamic Finder
name = maiha.name; // Accessor methods
maiha.name = 'foo';
maiha.save();

User.count();
User.find({all: true, order: 'name'});
<<--

他にも

  • Validation
  • Callback
  • Relation (hasOne, hasMany, belongsTo)
  • Migration

といった機能が実装されており、
ARの移植物としてみても完成度が非常に高い。
ちなみに、js のサイズは compaction なしで200KB程度。

参考

posted by maiha maiha on Mon 19 Oct 2009 at 05:12 with 0 comments