問題タブ [colander]
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 - キーが変数で値が配列であるマッピング用の colander スキーマ
次の形式の JSON のスキーマを colander で定義するにはどうすればよいですか?
「データ」内のキーは任意の文字列で、値は配列です。
現在、私は次のものを持っていますが、マッピングが持つことができる値の型に実際には何の制約もありません。
これを説明する適切な方法は何ですか?
python - Colander サブクラス化 SchemaNode
誰かが私を助けてくれるのだろうか。私は新しいプロジェクトで変形と水切りを調べており、SchemaNode のサブクラス化に関するドキュメントに従っていました。ただし、ドキュメントには次のように記載されていますが、
サブクラスは、次のメソッドと属性を定義できます: preparer、validator、default、missing、name、title、description、widget、および after_bind。
タイトルを定義すると、うまくいかないようです。ここに私が使用しているいくつかのサンプルコードがあります:
ただし、フォームがレンダリングされると、SchemaNode で定義されたタイトルに従って、フィールドのラベルは「Location」ではなく「Location Id」になります。代わりに私が書く場合:
その後、すべてが思い通りに表示されますが、ドキュメントには、これを行う必要はないと記載されているようです。そうすると、フィールドを定義し続ける必要がある場合、SchemaNode を事前に定義するという点が無効になります。
私は何かを見逃しているのでしょうか、それともすべきではないことをしているのですか (私はそうなるとは思いません)。どんな助けでも大歓迎です。
キース
pyramid - デフォーム/水切りの奇妙な動作「文字列のインデックスは整数でなければなりません」
だから私は過去数ヶ月間使用してきた次の作業コードを持っています
次に示すように、これは基本的な日付ピッカーです。
http://deform2demo.repoze.org/dateinput/
しかし、突然、このウィジェットを使用するとエラーが発生します。
python - ザルの逆シリアル化「無限」日付
逆シリアル化と検証jsonデータにザルを使用しています。特別な値infinity
と-infinity
日付フィールドを処理する必要があります。しかし、colander.Date
そのような値はサポートされていません。
出力があります
私の作業コードは次のとおりです。
出力があります
しかし、このようにするのが良い考えかどうかはわかりません。
または、日付フィールドのカスタム水切りタイプを定義して、代わりに使用する必要がありcolander.Date
ますか?
python - 不明な値を禁止しますか?
スキーマにない値がペイロードにある場合、colander でエラーを発生させることはできますか? したがって、ホワイトリストに登録されたフィールドのみを許可しますか?
これはサンプルです:
html - Deform - 入力タイプをテキストではなく数値にレンダリングする
したがって、私の問題は、Deform で次のような入力タイプ番号をレンダリングすることです。
それ以外の:
このようなソースから:
何を変更できますか?
python - 不明な値を許可
JSON応答を逆シリアル化する際にザルを使用しています。数値のみを含むように構成されたフィールドがありますが、このフィールドの応答に null または数値以外の値が含まれている場合があり、アプリケーションが無効なエラーをスローします。私のプログラムでそれを処理して、NAなどのデフォルト値をフィールドに与える方法はありますか? 状況を説明する例を次に示します。
これはサンプルです:
コードに何か問題がある場合は申し訳ありませんが、Python は初めてです。シナリオを明確にしたことを願っています。テストマークが数字でないときはいつでも、testMarkフィールドにデフォルト値、たとえばNAを与えたいと思います。
PS これは単なるサンプル シナリオです。実際のシナリオをここに投稿することはできません。