python-eve REST API フレームワークでは、リソースにリストを定義します。リスト アイテムのタイプは dict です。そして、リストを空にしたくありません。では、スキーマをどのように定義するのでしょうか?
{
'parents' : {
'type' : 'list',
'schema' : {
'parent' : 'string'
}
}
}
python-eve REST API フレームワークでは、リソースにリストを定義します。リスト アイテムのタイプは dict です。そして、リストを空にしたくありません。では、スキーマをどのように定義するのでしょうか?
{
'parents' : {
'type' : 'list',
'schema' : {
'parent' : 'string'
}
}
}
これを行う組み込みの方法はありません。ただし、リストのラッパー クラスを定義することもできます。
class ListWrapper(list):
# Constructor
__init__(self, **kwargs):
allIsGood = False
# 'kwargs' is a dict with all your 'argument=value' pairs
# Check if all arguments are given & set allIsGood
if not allIsGood:
raise ValueError("ListWrapper doesn't match schema!")
else:
# Call the list's constructor, i.e. the super constructor
super(ListWrapper, self).__init__()
# Manipulate 'self' as you please
ListWrapper
空でないリストが必要な場所ならどこでも使用できます。必要に応じて、スキーマの定義を何らかの形で外部化し、コンストラクターへの入力として追加することができます。
また:これを見てみたいかもしれません