6
私はcolander
を使用して、いくつかのWebサービスへの入力を検証(およびjsonデータの逆シリアル化)しています。空の空リストを小計でキャッチ
空リストをキャッチするための小分類スキーマにルールを追加したいと思いますが、その方法を理解できません。
今、私は次の例を持っています。f()
の2つの異なるデータセットを呼び出すことを示しています。私は後が原因空events
リスト
import colander
def f(data):
class EventList(colander.SequenceSchema):
list_item = colander.SchemaNode(colander.Int())
class Schema(colander.MappingSchema):
txt = colander.SchemaNode(colander.String())
user = colander.SchemaNode(colander.String())
events = EventList()
try:
good_data = Schema().deserialize(data)
print 'looks good'
except colander.Invalid as e:
print "man, your data suck"
good_data = {'txt' : 'BINGO',
'user' : 'mogul',
'events' : [11, 22, 33]}
f(good_data)
bad_data = {'txt' : 'BOOM',
'user' : 'mogul',
'events' : []}
f(bad_data)
の提案colander.Invalid
例外をトリガしたいと思いますか?
BANGを!見つけたありがとう!どこかで私はほとんどそれを試してみましたが、ちょうどそれを得ることができませんでした。あなたがそれを必要とするときに寄付ビールボタンはどこですか? – mogul