問題タブ [graphene-django]

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 に答える
1225 参照

django - Graphene-Django Relay カーソルベースのページネーションが動的データに対して機能しない

Graphene-Django Relay 仕様を使用して動的データを取得しています。

カーソルとデータを取得した後に新しい投稿を追加すると、カーソルが変化します。つまり、データの正確なオフセットを指していたカーソルは、もはやそのデータを指していません。これは、新しい別のデータを指しています。これにより、次を使用してカーソルベースのページネーションを実装できません。

データが変化するとカーソルが変化するため、従来のオフセットベースのページネーションと同じです。足りないものはありますか?カーソルに必要なのは、変更しないことです。この記事のように:

https://www.sitepoint.com/paginating-real-time-data-cursor-based-pagination/

カーソルが動的に変化する同じデータを指すようにするにはどうすればよいですか?

0 投票する
3 に答える
4333 参照

django - Django グラフェン リレー order_by (OrderingFilter)

リレーとフィルターを備えたグラフェン インターフェイスがあります。それはかなりうまくいきますが、order_by オプションを追加したいと思います。私のオブジェクトは次のようになります。

ExtendedConnection は関係ありませんが、次のようになります。

これにより、次のようにクエリを実行できますfoo(code_Icontains:"bar")グラフェンのドキュメントによると、そのために FilterSet で OrderingFilter を使用する必要があります。フィルターは自動であるはずなので、少し面倒ですが、そうすると:

提供する必要があるエラーが表示されます。fieldsまたはexclude:

したがって、 a を追加しfields = []て沈黙させると、コンパイルされます。ただし、次の場合に使用します。

code_Icontains消えるような私の通常のフィルター。そこにもう一度追加できますが、ばかげています。ソースをざっと見てみると、Relay または django-filters がすでに FilterSet クラスを作成しているように見えますが (理にかなっています)、このように上書きするのは明らかに悪い考えです。

Graphene Relay でフィルタリングされたオブジェクトに orderBy フィルターを追加するにはどうすればよいですか? これはかなり簡単なはずですが、これを理解するのに苦労しています。

DjangoFilterConnectionFieldまた、何らかの方法で order_by を注入するaでサブクラス化する例を見てconnection_resolverきましたが、それは orderBy パラメーターがないことを示しています。