問題タブ [marshmallow]

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.

0 投票する
1 に答える
13181 参照

python - リストデータを使用したマシュマロのネストされたスキーマを理解する

Python は初めてで、マシュマロのシリアル化を使用しています。ネストされたスキーマを使用できません。、私のコード

スキーマ

そして私のフラスコアプリ

私のコードに何か問題がありますか?ネストされたスキーマの問題に直面しており、ネストされたデータを出力に取得できません。

以下の出力

[ { "アドレス": "qqq ", "company_id": 1, "場所": "www ", "名前": "eee" }, { "アドレス": "www ", "company_id": 2, "場所": "qqq ", "名前": "aaa" } ]

0 投票する
1 に答える
1366 参照

python - マシュマロ:この python クラスのコンストラクターをオーバーライドするにはどうすればよいですか?

以下は、SQLAlchemy ベースのアプリケーションで使用しているPythonマシュマロシリアライザーです。

このシリアライザーを呼び出す方法は次のとおりです。

ここで、シリアライザーを変更して、追加の引数を取り ( を渡しmy_argumentます)、その引数の値が 1 の場合は の"Goodbye"代わりに返すようにし"Hello"ます。どうやってやるの?

特に、この marshamallow Schema に引数を渡して、内部から使用できるようにする方法がわかりませんget_field3。メソッドをオーバーライドする必要があることはわかっています__init__()。しかし、私はそれがどのように見えるべきかわかりません。次のことを試しましたが、うまくいきませんでした。

これは私が得たスタックトレースでした:

0 投票する
1 に答える
102 参照

python - 階層構造からの Flask SQLAlchemy クエリ

マシュマロでFlaskとSQLAlchemyを使用していて、何かに頭を悩ませようとしています。階層内で外部キーを使用して機能する複数のモデル (テーブル) がある場合、最も遠い子からの結果を適切にクエリするにはどうすればよいですか?

例えば:

マシュマロにはそれぞれのスキーマがあります。ここで探しているのは、特定の学校の学生のすべての学生情報を取得する方法です (SQLAlchemy を使用)。後で、これらを JSON にシリアル化します。

0 投票する
1 に答える
1833 参照

python - DB データ モデルを使用して SQLAlchemy モデル、スキーマ、および JSON 応答を生成する

私の目標は、Python Web アプリケーションに Flask と SQLAlchemy を使用して、次のことができるシステムを作成することです。

  1. 既存の PostgreSQL DB からデータ モデルをインポートし、これらを対応する SQLAlchemy モデルのフィールドにマッピングします
  2. これらの SQLAlchemy モデルを使用して、スキーマを自動的に生成します。このスキーマは、ユーザーが送信したデータに対してデータ検証を実行するために使用されます (現在、マシュマロを使用しようとしていますが、他の提案も受け付けています)。
  3. 手順 2 で生成されたスキーマを使用して、JSON 応答の書式設定を実行します (現在、JsonAPI のスキーマに従って応答を書式設定しようとしています。これは必要に応じて変更される可能性がありますが、私はそれを好みます)。

これらはすべて単一のレイヤーにパッケージ化され、API を作成するときに単純なデータ アクセス、検証、および応答の書式設定を可能にする必要があります。できれば、DB に既に存在する定義を超えてデータ モデルやスキーマを手動で定義する必要はありません。これは私の質問につながります:

既存のフレームワークを利用して、達成しようとしているすべてのことを実行できますか? すべてを実行できる 1 つのライブラリがあるとは思いませんが、いくつかの既存のフレームワークを活用できるようになることを望んでいます。ただし、特に手順 2 と 3 で直接競合が発生します。これまで使用しようとしてきたスタックは次のとおりです。

  • Flask (私の Web フレームワーク)
  • SQLAlchemy (リフレクションを介してデータにアクセスするために使用されます。以下を参照してください)
  • Flask-Marshmallow (データ検証用のスキーマを生成するには)
  • Marshmallow-JsonAPI (JsonAPI 仕様に従って JSON 応答をフォーマットするには)

ステップ1の解決策があります:SQLAlchemyのリフレクション。これにより、既存の DB のテーブルを読み取り、それらを SQLAlchemy モデルにマップできます。これは美しく機能します。

ステップ 2 と 3 の組み合わせは、ぼやけているところです。Flask-Marshmallow と Marshmallow-JsonAPI を使用しようとしています。Flask-Marshmallow にはModelSchema クラスがあり、既存の SQLAlchemy モデルを渡すことでスキーマを生成できます。ステップ 1 で生成された SQLAlchemy モデルを渡すことができ、ステップ 2 の基準を満たします。Marshmallow-JsonAPI に関しては、モデルのスキーマを定義できる機能があり、JSONAPI 準拠の応答を自動的に作成します。 、ステップ 3 の基準を満たしています。これらの各フレームワークを個別に取得して、必要なことを実行できます。

残念ながら、私のスキーマは Flask-Marshmallow と Marshmallow-JSONAPI の両方のスキーマ クラスから継承する必要があるため、問題が発生します。「ダミー」クラスの私のモデルは次のようになります。

API を起動しようとすると、次のような奇妙なエラーが発生します。

私の Schema クラスは 2 つの異なるスーパークラスから継承しているため、問題が発生しているようです。2 つのマシュマロ ライブラリはかなり互換性があると思いますが、これには問題があるようです。

このすべての結果は、次に何を試すべきかよくわからないということです. マシュマロ フレームワークに関する特定のアドバイスを実際に期待しているわけではなく、私の一連の考えを示そうとしているだけです。この種の設計に関するベスト プラクティスはありますか、それとも一度に多くのことを解決しようとしていますか?

(Python と SO の両方に新しい - これのいずれかが不明な場合はお詫びします)。

0 投票する
1 に答える
338 参照

postgresql - API応答からオブジェクトの値を更新する方法

私は Python の世界ではまったくの初心者ですが、この美しい言語を学ぼうとしています。しかし、私はあなたの助けが必要です。

API があり、ユーザーが自分の製品に関するデータの値を変更したい場合に API が必要で、新しい値で更新されます。

例えば:

私は次の製品を持っています:

  • タイトル=DCスノーボードブーツ
  • 説明 = こんにちは。私はこのスノーボード ブーツを販売しています。どちらも新品で 130 ポンドです。
  • 価格 = 130 ポンド

次に、ユーザーは、たとえば製品の価格を変更する要求を行います。

そして、それを行う方法に完全に迷いました。

製品を更新するための私の見解: