bpmappers 0.8 ドキュメント

リファレンス

«  Djangoフレームワークのモデルをマッピングする   ::   コンテンツ   ::   開発  »

リファレンス

class Mapper

class bpmappers.Mapper(data=None, **options)
key_name(name, value, field)

hook point for key name convert.

data:マッピング元のオブジェクト(デフォルト値: None).
**options:オプション引数(デフォルト値: なし)
Mapper.as_dict()

マッピングした順序付き辞書(SortedDict)を返します。

Mapper.filter_FOO(value)

FOOにはフィールド名を指定します。

オブジェクトから取り出してデータを評価したあとに実行されます。

フィールドが NonKeyField の場合、引数なしで呼び出されます。

Mapper.after_filter_FOO(value)

FOOにはフィールド名を指定します。

Field.get_value のあとに実行されます。

Mapper.attach_FOO(parsed, value)
parsed:変換済みのフィールド名-値の辞書
value:変換済みの値

FOOにはフィールド名を指定します。

このメソッドを記述した場合、マッピング結果の辞書への値の追加は自前の処理で行う必要があります。

Mapper.order(parsed)
parsed:変換済みのフィールド名-値の辞書

as_dictメソッドの最後に呼ばれます。順序付き辞書のソート順を変更する場合にオーバーライドします。

Mapper.key_name(name, value, field)

hook point for key name convert.

name:マッピング先の辞書のキー名
value:変換済みの値
field:処理中のFieldオブジェクト

as_dictメソッドから呼ばれます。マッピング先のキー名をマッピングの直前に変換したい場合に使います。

class ModelMapper

class bpmappers.ModelMapper(data=None, **options)

Djangoモデルクラスからマッピング定義を生成します。

class NonKeyField

class bpmappers.NonKeyField(callback=None, after_callback=None, *args, **kwargs)

マッピング対象のdataにキーがない場合に使用します。

class StubField

class bpmappers.StubField(stub={}, *args, **kwargs)

stubで指定した固定値を返すフィールドです。

class Field

class bpmappers.Field(key=None, callback=None, skip_callable=False, *args, **kwargs)

キーを持つフィールドのクラス。通常は継承して使用します。

class RawField

class bpmappers.RawField(key=None, callback=None, skip_callable=False, *args, **kwargs)

マッピング対象のdataに対してキーで取得した内容をそのまま返すフィールドです。

class ChoiceField

class bpmappers.ChoiceField(choices, key=None, callback=None, skip_callable=False, *args, **kwargs)

class DelegateField

class bpmappers.DelegateField(mapper_class, key=None, callback=None, skip_callable=True, before_filter=None, required=True, attach_parent=False, *args, **kwargs)

It is Field delegating mapping to the mapper_class.

DelegateField.before_filter(value)

class NonKeyDelegateField

class bpmappers.NonKeyDelegateField(mapper_class, callback=None, attach_parent=False, *args, **kwargs)

class ListDelegateField

class bpmappers.ListDelegateField(mapper_class, key=None, callback=None, filter=None, skip_callable=True, after_filter=None, *args, **kwargs)

Delegate mapping to mapper_class the value as list.

ListDelegateField.filter(value)
ListDelegateField.after_filter(value)

class NonKeyListDelegateField

class bpmappers.NonKeyListDelegateField(mapper_class, callback=None, filter=None, after_filter=None, *args, **kwargs)
NonKeyListDelegateField.filter(value=None)

«  Djangoフレームワークのモデルをマッピングする   ::   コンテンツ   ::   開発  »