2009年8月27日木曜日

Ciderにact as listを実装中

Ruby On Railsのact_as_listモジールの機能をCiderへの追加作業をしています。

listブランチの方で作業していて、どんどん変わる可能性があります。


モデルに"position"という属性を追加すると、自動的に番号が入力され、テーブルに表示する時に順番が保たれる様になります。
まだ、番号を付けるだけで移動時の番号の振り直しは対応してませんが、これから実装していきたいと思います。

positionを別の属性にしたい場合はカスタムクラスで、+[NSManagedObject listAttributeName]を書き換えて適切な属性の名前を返す様にして下さい。

scopeを用いる場合は+[NSManagedObject listScopeName]を書き換えて、リレーション名を返す様にして下さい。
リレーション先毎に番号が割り振られます。


追記:
willSaveで処理してますが、awake...で処理した方が良いと思い試してみましたが、この時点ではまだscopeで設定されたリレーションが設定されていないので、うまく行きそうになかったです。
KVOを使ってscopeで設定されたリレーションが設定された時に処理する様にしてみましたが、複雑になって来て簡単に行きそうでなかったので、見送りました。

0 件のコメント: