問題タブ [webargs]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python-3.x - 静的でない引数の検証 (webargs/marshmallow)
既にフロント ページを持っているアプリの 1 つの API を作成しようとしています。入力引数は次のようになります。
ケース1
{'_field_1_': 'current_coupon', '_1_>=_1': 'True', '_1_value_1': '10', '_1_value_2': '', '_1_compare_field': '', 'output-columns': 'cusip,isin,description'}
ケース 2
{'_field_1_': 'cusip', '_1_exactly': 'True', '_1_value': 'ads', '_1_compare_field': '', '_field_2_': 'semi_mod_duration', '_2_>=_1': 'True', '_2_value_1': '', '_2_value_2': '', '_2_compare_field': 'eff_dur', 'output-columns': 'cusip,isin,description,ticker,current_coupon'}
ドキュメントで簡単な引数の検証を行う方法を見つけました。webargs
別のアプリのコードは次のようになります。
ただし、このアプリでは、2 番目のケースからわかるように、フィールドの数は可変です。引数を含む辞書でこれらの引数を複数回再定義することなく、引数に存在する場合、すべて_field_x_
が同じ方法で検証されるようにするにはどうすればよいですか。別の手動の方法は、POST エンドポイントに到達したときにそれを検証することですが、それは奇妙に感じます。x
_field_x_
ここにも条件付きロジックがあります。たとえば、選択したフィールドのタイプがテキストの場合、ユーザーは正確なチェックボックス オプションを使用できますが (_1_exactly
ケース 2 の場合)、フィールドが数値の場合は_1_value_1
、ケース 1 のように上にロジックが必要です。
これにアプローチする方法は?
flask - Flask-RESTful + webargs で GET パラメータが受信されない
Resource
getメソッドにはフラスコ安静とuse_kwargs
デコレータのクラスを使用しています。コードは次のとおりです。
しかし、URL 経由でパラメーターを渡すことはできません。常に欠損値を返します。次の URL は機能しません。
についても同じですuse_args
。しかし、私は私のパラメータを見ることができますflask.request.args
。