問題タブ [eve]
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.
eve - Python Eve によるマルチユーザー制限付きアクセス
現在、Eve v0.4 は「auth_field」を介した User-Restricted Resource Access をサポートしていますが、単一所有者のケースを自動的に処理するように設計されているようです。
許可された ID の配列に ID が含まれていた場合に、ユーザーがリソースを表示できるマルチユーザーの制限付きアクセスを有効にするにはどうすればよいでしょうか? 個別の読み取りおよび書き込みアクセス許可の複数のリストを持つ可能性があります。
eve - HTTP なしで Eve の DB レイヤーを使用する
私のアプリケーションでは、MongoDB コレクションをサーバー側のスクリプト ジョブ (IE: 30 分ごとに他の API からスクレイピング/プルする cron ジョブ) で更新する必要があります。私が本当にやりたいことは、MongoDB コレクションを更新することですが、スキーマに対してデータを検証し、メタデータ (更新、作成など) を含めます。
これを解決するために頭に浮かぶ2つの方法は次のとおりです。
- HTTP POST/PUT/PATCHES を実行する偽のクライアントを用意します。ただし、これは、この偽のクライアントが認証/承認/最終変更日などを処理する必要があることを意味します。
- PyMongo を使用して、DB と直接やり取りします。ただし、これは、データ検証やメタデータが保存されないことを意味します。
Eve にはデータベース用のフックがあり、HTTP を使用せずに Eve リッチなデータベース更新を行うことができますか?
python - Python Eve のダブルレベル埋め込み
私が理解している限り、Python Eve は二重レベルの埋め込みをサポートしていません。確認できますか?
より適切に説明すると、 documentA
を参照する document を参照するB
documentが与えられた場合、 Eve によってドキュメントが埋め込まれC
て提供されることはありませんよね?A
C
ドキュメントにも次のように書かれているため、これは不可能だと思います。
複数レイヤーの埋め込みはサポートしていません
python - Eve では、コレクションのサブリソースを作成し、親コレクションのエンドポイントを維持するにはどうすればよいでしょうか?
次の 3 つのエンドポイントが必要です。
ここに私のsettings.pyファイルからの抜粋があります
url プロパティを省略した場合、GET /: で 2 つの期待されるエンドポイントを取得します。
ただし、url プロパティを含めると、/images をヒットできず、代わりに /games のみをヒットできます。次に/games/<game_id>/images
示すように:
コレクションの画像を保持し、そのドキュメントをサブリソース クエリで利用できるようにするにはどうすればよいですか?
python - Eve では、http メソッド POST を使用してドキュメントをコレクションに挿入することと、mongo シェルを使用することの違いは何ですか?
背景情報
以前の質問 ( Eve では、コレクションのサブリソースを作成し、親コレクションのエンドポイントを保持するにはどうすればよいですか? ) に対する答えは、Eve の 1 つのデータソース機能である複数のエンドポイントを使用することでした。IRC チャンネルで cuibonobo と話していたのですが、彼女はここに示すように、game_id を文字列ではなく objectid に変更することで、これを機能させることができました。
http://gist.github.com/uunsamp/d969116367181bb30731
しかし、私はこれを機能させませんでした。会話からわかるように、ドキュメントを別の方法でコレクションに入れていました。
14:59 〈キュイボノボ〉号 以前の設定ファイルではゲーム ID が文字列として保存されていたため、ルックアップが機能しません。
15:00 < cuibonobo> game_id が ObjectId として保存されているドキュメントでのみ機能します
15:01 < cuibonobo> Eve の現在の動作方法では、タイプを「objectid」に設定すると、データベースに保存する前に文字列を Mongo ObjectId に変換します。しかし、その変換は文字列では起こりません
15:02 < znn> オブジェクトの保存に eve を使ったことがない
15:02 < znn> アイテムを挿入するためにmongoシェルインターフェースを使用しています
15:03 <cuibonobo> ああ。うーん。それは物事を複雑にするかもしれません。Eve は、ドキュメントを挿入する前に型変換などを行います。
15:04 < cuibonobo> なのでmongoに直接何かを挿入することは一般的に推奨されません
私をstackoverflowに導く質問:)
http メソッド POST を使用してドキュメントをコレクションに挿入することと、mongo シェルを使用することの違いは何ですか? 最終的に、ユーザーはいずれかのドキュメント挿入方法を使用できるようになりますか?
追加情報
私はこの質問をする前にhttp://github.com/nicolaiarocci/eve/blob/develop/eve/methods/post.pyを調べていましたが、理解するのにしばらく時間がかかる可能性があります。私よりもコードに精通しています。
python - Eve: リスト型のフィールドに対する CRUD
こんにちは、辞書のリストであるフィールドからアイテムを読み取り/追加/変更/削除するための回避策はありますか? 現在 Eve でサポートされていないことはわかっているので、推奨事項はありますか?
より具体的には、これが私のスキーマです。
従業員に対して CRUD 操作を実行できるようにしたいと考えています。ヒントはありますか?
python - python-eve tokenauth 401エラー
設定.py:
run.py:
mongodb (アカウント コレクション):
コマンド (cHJvdmE6YmxhYmxh
はprova:blabla
):
私の問題は、認証が間違っていることを示す 401 エラーが発生することです。
また、base64 でエンコードされたトークンのみを使用してみましたが、何も変わりませんでした。何か案は?
私は Eve-0.4 と Eve-0.5 を使用しています。