0
私は、kwargs
だけを取るクラスを持っています。私はkwargsからはいくつかのキー[「コンテンツ」]は常にPythonを使用してキーとデータ型をマップするkwargs
- ...
kwargs['content']
にあるものをモデル化し、チェックするための柔軟な方法を必要とする> content = "{'user': 1, 'theme':'red'}" > kwargs['content'] = content > m = Message(**kwargs)
:引数
kwargs['content']
はuser
とtheme
キーが含まれていますプレゼント。 - 常に値がnullでなく型に一致していることを確認してください。
これは私が試したことですが、より良い方法があるように感じます。
class Message(object):
def __init__(self, *args, **kwargs):
for field in self._hash_model():
if field not in kwargs['content']:
raise ValidationError('Missing % field'.format(field))
# check type
# turn to json
def _hash_model(self):
"""
My model of values that need to be in content
"""
model = {
'user': int,
'theme': str
}
return model
私はPython 3.4を使用しています。
'__init__'メソッドも' * args'を使っていますか? – AKS
'content'は' str'か 'dict'ですか? –
@CPandaのコンテンツは残念ながら文字列として渡されます! – Prometheus