問題タブ [manytomanyfield]

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

django - Django モデル; 保存時に ManyToMany フィールドに余分なアイテムを保存する

そのため、現在、既存のデータベースの上に新しいタグ付けシステムを実装しています。

現在のタグ付けシステムは ManyToMany フィールドを利用していますが、クライアントはカンマ区切りの入力フィールド (CharField) を希望しています。

したがって、現在のアーキテクチャを危険にさらすことなく、新しいコンマ区切りフィールドを有効にすることで、タグを以前の ManyToMany アーキテクチャとして書き留めるのが最善の方法であると考えました。

しかし、私はそれをやろうとしましたが、タグはデータベースタグモデルに保存されますが、適用すべきエントリには保存されません。

簡単な要約:

さらなるモデルの背景:

0 投票する
2 に答える
17718 参照

django - フィルターに基づいて ManyToMany 関係にある複数のオブジェクトを削除するにはどうすればよいですか?

次の 2 つのモデルが与えられます。

これを使用して、特定の時間前にソースのすべてのアイテムを見つけることができます。

そのクエリに一致するすべてのアイテムを効率的に削除するにはどうすればよいですか? 私は次のようなことを試すことができると思います:

しかし、それは悪いようです。

これらのアイテムは他のソースにも属している可能性があるため、削除したくないことに注意してください。特定のソースとの関係を削除したいだけです。

0 投票する
4 に答える
17347 参照

python - DjangoAdminでチェックボックスとしてManyToManyFieldを表示する

Django AdminでManyToManyFieldをチェックボックスとして表示する簡単な方法はありますか?前もって感謝します!

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

django - M2M関連フィールドのテーブルを作成しないようにDjangoに指示するにはどうすればよいですか?

私はDjangoコードスニペットのこの小さな宝石を使用して、ManyToManyFieldを両方向から編集しています。

(スニペットの詳細はこちら

これにより、ジョブフォームから特定のジョブのすべての人を選択でき、逆に、人フォームから人のすべてのジョブを選択して、どちらの場合も単一のjobs_personsテーブルを更新できます。

ただし、Django 1.0から1.2に移行すると、creates_tableは明らかに基本クラスでサポートされていないプロパティであるため、syncdbは重複テーブルエラーを生成するようになりました。

RelatedFieldのテーブルを作成しないようにDjango1.2に指示する別の方法はありますか?

0 投票する
4 に答える
3009 参照

django - DjangoModelChoiceFieldクエリセットを選択したアイテムに制限する

これが私が一日苦労してきたことです...

モデルへのメッセージモデルがありrecipientsます。ManyToManyFieldUser

次に、メッセージを作成するためのフォームがあります。何千人ものユーザーがいるため、フォームの複数選択ウィジェットにオプションを表示するのは便利ではありません。これはデフォルトの動作です。代わりに、FcbkComplete jqueryプラグインを使用して、受信者フィールドを、ユーザーが受信者を入力する入力フィールドのように見せました。これは機能します。

だが...

フォームページには表示されませんが、すべてのユーザーリストが選択フィールドのページに表示されます。これは明らかな理由で私が望まないことです。

検証とクエリセットを操作するModelChoiceFieldの動作をオーバーライドしてみたり、MultipleChoiceウィジェットなどで遊んだりしましたが、どれも機能せず、自然に感じられませんでした。

それでは、クライアント側にオプションの全リストがないようにするが、それでもクエリセットに対して検証できる(最良の)方法は何ですか?

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

django - Djangoで一度にManyToManyリレーションシップに複数のオブジェクトを追加するにはどうすればよいですか?

Djangoのドキュメントに基づいて、多対多の関係に追加するために一度に複数のオブジェクトを渡すことができるはずですが、

* TypeError:ハッシュ不可能なタイプ:'リスト'

リストにキャストされたdjangoクエリセットを渡そうとしたとき。QuerysetまたはValuesListQuerysetの受け渡しも失敗するようです。forループを使用するよりも良い方法はありますか?

0 投票する
2 に答える
3389 参照

django - ModelForm の Charfield に ManyToMany 項目のコンマ区切りリストを表示する

テーブル「タグ」への ManyToMany フィールドを含むモデルがあります。このテーブルは巨大になる可能性があるため、フォームに選択を表示したくはありませんが、charfield によって提供されるタグのカンマ区切りのリストを表示したいと思います (私はそう思います)。

保存時に、リストをコンマで分割し、(get_or_create を使用して) 1 つずつ追加します。私はすでにそれをしました。

しかし、データを変更したい場合は、タグのリストではなく、ID のリストを使用します。

カンマ区切りのタグのリストを表示するにはどうすればよいですか? そのために新しい特定のフィールドを作成する必要がありますか? それとも、私が探していることをする何かがすでにありますか?

ご協力いただきありがとうございます!

0 投票する
0 に答える
2261 参照

hibernate - HIbernate - 「外部キー参照からの列数が間違っています。2 インチ エラーのはずです

私はしばらくの間、この質問の解決策を探していました。この問題の原因となっている多対多の関係について話しているスレッドをいくつか見つけましたが、それが私の状況には当てはまらないと思うので、これを新しいスレッドに投稿します。

次のデータベース設計があります: ========================================= ===================================

ユーザー テーブル: PK USER_ID、USER_NAME UNIQUE、...

item テーブル: PK ITEM_ID、FK ITEM_SELLER -> user.USER_ID との多対 1 関係、FK ITEM_BUYER -> user.USER_ID との多対 1 関係、...

入札テーブル (ユーザーとアイテムの間のブリッジ): PK BID_ID、FK BIDDER_ID -> user.USER_ID との多対 1 関係、FK ITEM_ID -> item.ITEM_ID との多対 1 関係、...

カテゴリ テーブル: PK CAT_ID、...

item_category テーブル (カテゴリとアイテムの間のブリッジ): PK ITEM_CAT_ID、FK ITEM_ID -> item.ITEM_ID との多対 1 の関係、FK CAT_ID -> category.CAT_ID との多対 1 の関係、...

================================================== ============================

NetBeans を介して休止状態を使用してこれを設定しようとしています。hibernate.cfg、reveng、および util ファイルのセットアップ手順を説明したチュートリアルを見つけ、NetBeans ツールを使用して POJO を生成する方法を示しました。チュートリアルでは、cfg ファイルを右クリックして HQL クエリを実行し、すべてが正しく機能していることを確認します。簡単なテーブル (上記のユーザー テーブル) を使用してこのプロセスをテストしたところ、すべてが機能しました。ただし、すべてをまとめようとすると、次のエラーが発生します。

org.hibernate.AnnotationException: A Foreign key refering GavelDB.User from GavelDB.Bid has the wrong number of column. should be 2 at org.hibernate.cfg.annotations.TableBinder.bindFk(TableBinder.java:276) at org.hibernate.cfg.ToOneFkSecondPass.doSecondPass(ToOneFkSecondPass.java:89) at org.hibernate.cfg.AnnotationConfiguration.processFkSecondPassInOrder(AnnotationConfiguration.java:499) at org.hibernate.cfg.AnnotationConfiguration.secondPassCompile(AnnotationConfiguration.java:304) at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1286) at org.hibernate.cfg.AnnotationConfiguration.buildSessionFactory(AnnotationConfiguration.java:859)

前に述べたように、この問題を検索する以前の試みのすべてで複合キーが指摘されましたが、この設計ではそれらを回避するように努力したので、それがどのように問題になるかわかりません. 私は休止状態が初めてなので、ファイルを最初から書き込むための知識ベースはまだありません。誰かが私に洞察を提供できるなら、それは大歓迎です。お早めにどうぞ!

参考までに、エラーに記載されている 2 つのファイルを次に示します。

BID.JAVA

ITEM.JAVA

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

ajax - Django: 管理者の AJAX ManyToManyField

ManyToManyFields を管理者と同じように表示したいのですfilter_horizontalが、ユーザーがフィルター フィールドに入力するときにオプションを入力します。多くのオプションがあり、それらを一度にロードするには多くの時間がかかります。

django-ajax-filtered-fieldsを見つけましたが、フォーム内のすべての複数選択フィールドを置き換えることだけが必要な場合、モデル クラスを変更する必要があるため、やり過ぎのように思えます。

から継承するカスタム ウィジェット フィールドを作成するadmin.widgets.FilteredSelectMultipleのが正しい方法のようです。だから私は自分のウィジェットをロールしようとしています:

これは正しくレンダリングされます。

some_js_to_load_ajax_options.jsしかし、このajax 部分を実装する方法がわかりません。独自の jQuery スニペットを作成するかSelectFilter2、付属の変更を行う必要がありadmin/media/jsますか? 誰か前に行ったことある?

編集: 質問の核心とは関係ありませんが、フィールドのウィジェットのみをオーバーライドしたいので、より短い方法は次を使用することformfield_overridesです:

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

django - Django 管理者 ManyToManyField:change_form の使いやすさを改善しますか?

次のような Django モデルがあります。

多くの科目があります - 約100。

Django admin で Book レコードを編集する場合、特定の本にどの主題が存在するかを確認するのは非常に困難です。

Django 管理者は複数選択リストを提供していますが、これは素晴らしいことですが、本を表示するには、選択リスト全体をスクロールする必要があります。

次のいずれかであれば、はるかに優れています。

  1. 複数選択リストの上に件名の読み取り専用リストを提供するか、または
  2. 複数選択リストは、選択されたサブジェクトで始まり、「----」のようなエントリがあり、他のサブジェクトが続きました。

Django管理者のManyToManyFieldsの使いやすさを向上させるために、Djangoで上記のいずれかを実装する方法を知っている人はいますか?

ありがとう!