問題タブ [django-mptt]
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 - django mptt の使用に関する問題
django mptt の実装に問題があります。
これが私のモデルです:
と
だから私が見ているのは、財務を子として会社に追加する方法です。mptt.register(Financials, parent = Company)
もちろん、エラーが発生することを試しました。
したがって、mytree 構造は次のようになります。
ありがとう
python - django mptt を使用するにはどうすればよいですか?
私はモデルを持っています:
と
Financials
では、子としてCompany
mptt ツリー構造に追加するにはどうすればよいですか?
django - Django MPTT - ツリー フィルタリング
MPTT の templatetag を使用して、ジャンル ツリーをレンダリングしています。
問題は、私のgenre
オブジェクトにはis_visible
尊重されるべきプロパティがあるということです。
これを達成するための最もスマートでクリーンな方法は何ですか?
追加情報
(X)HTML リストのネストを適切に生成する必要があります。継承された可視性チェック用の SQL 関数を定義しました。
そして、full_tree_for_model
タグをオーバーライドしてカスタムマネージャーを使用しようとしましたが、これはクエリセットに余分なものを追加するだけis_genre_branch_visible(genre_id)
です。しかし、順序に問題があり、実際にはこれを理解できません。
プラスそれは機能しますが、私はそのアプローチが好きではありません。私には醜く感じます。
django - django mptt ツリーをどのようにソートしますか?
次のようなオブジェクトとその人口の mptt ツリーがあるとします。
動物、60
- ツチブタ、30
- ボブキャット、20歳
- シマリス 10
野菜、6
- りんご 1
- ビート、2
- カリフラワー、3
ミネラル 0
上記を各サブレベルの人口でどのように並べ替えますか? 私は行きたい:
動物、60
- ツチブタ、30
- ボブキャット、20歳
- シマリス 10
野菜、6
- カリフラワー、3
- ビート、2
- りんご 1
ミネラル 0
私はdjangoでmpttを構築しています。
sql - ネストされたセットの一部がユーザーによって折りたたまれたときに、ネストされたセット全体をフェッチしないようにする SQL クエリ
管理者のフラットリストよりも使いやすいものを提供することにより、django-mptt と contrib.admin を結び付けようとしています。ツリーは大きいはずなので (そうでなければネストされたセットを使用しないでしょう)、ユーザーはその一部を展開したり折りたたんだりできるはずです。
ユーザーがブランチを展開、折りたたみ、または展開すると (そのために ajax が使用されます)、折りたたまれたブランチのコンマ区切りリストを含む Cookie も設定されます。このようにして、次にこのユーザーが私の django-mptt を利用したモデルの管理者にアクセスしたときに、彼が残した正確な状態のツリーを彼に見せることができます。ここで、この折りたたまれたブランチのリストを使用して、ツリーの必要な部分のみを取得することでデータベースの負担を軽減したいと考えています。
これを効果的に行う方法はありますか?私がグーグルで検索したソリューションは、ブランチが折りたたまれたときにクエリを実行するのを避けることができるように、ブランチごとにクエリを作成していましたが、それはあまり効果的ではありません。固定数のクエリで可能でしょうか?
django-mptt - django-mptt ツリーの最後の子を取得するにはどうすればよいですか?
django-mptt ツリーの最新オブジェクトにアクセスしたい。
django テンプレートからこれを行うことは可能ですか?
django - ユーザーが投稿したスレッドを取得するdjangoでクエリセットを作成するにはどうすればよいですか?
django-mpttを使用してスレッド化されたフォーラムアプリを作成しています。すべてが稼働していますが、特定のクエリセットを1つ作成するのに問題があります。
次のような投稿を取得したい:
- ルートノードです
- current_userによって投稿されているか、current_userによって子孫が投稿されています。
私がこれまでに持っているのはこれです:
2番目のQでは、current_userがその子孫の1つを投稿したかどうかを確認する必要があります。それが可能かどうか誰か知っていますか?
django - Django-mptt は完全にバグがありますか、それとも間違っていますか?
私は運がほとんどない状態でdjango-mpttを使用しようとしています。これは、Python2.5、windows、sqlite3、Django 1.2pre、svn の最新の django-mptt を使用しています。
コード:
モデル:
設定:
これにより、1 つのルートと 2 つの子が各非リーフ ノードからぶら下がっているツリーが作成されます。
さあ、楽しみが始まります:
多くの祖先が間違っているのはなぜですか。たとえば、ノード 10 には祖先 (0,1,10) が必要です。
私は何か間違ったことをしていますか、それとも django-mptt にバグがありますか?
django - django-mpttで次のことを行う際の私の間違いは何ですか?
カテゴリに関連する項目エントリを持つカテゴリ ツリーがあります。だから、これは私のモデルファイルです:
各項目が複数のカテゴリに属する可能性があるため、ManyToManyField を使用しています。
今、私のアプリに「mptt」をインストールした後。シェルで次のことを試しています。
ツリーを返し、各ノードのノードに属するアイテムの数をロードする必要があります。ドキュメントに記載されているように、これは django-mptt の標準機能のようです。
ただし、エラーが発生します。以下はトレースです。
Ubuntu 9.1 で SVN django-mptt と django 1.1 を使用します。
django - django-MPTT での子ノードの並べ替え
私はdjango-MPTTの Ben Firshman のフォークを使用しています (推奨についてはDaniel Rosemanに感謝します)。
共通の親を共有するノードの順序を変更しようとして行き詰まりました。次のような主キーのリストがあります。
これらすべてのノードには、たとえば主キー 1 を持つ親があります。
現在、これらのノードは順序付けさ[5, 3, 9, 7]
れていますが、順序を変更するにはどうすればよい[5, 9, 7, 3]
ですか?
私はこのようなことを試しました:
のドキュメントmove_to
に従って、私がやりたいことを期待していますが、何も変わらないようです。最初のアイテムがids
親の最初の子になるように見える場合もあれば、そうでない場合もあります。
兄弟であるターゲットがターゲットの直後に移動するノードをmove_to
呼び出すためのドキュメントを読んでいるのは正しいですか?move_to
n
position=right
n
n
これを理解しようとしてモデル テーブルを台無しにしてしまった可能性があるため、上記のコードは実際には正しいのかもしれません。これを行うためのはるかに洗練された方法 (おそらくO(n)
選択とO(n)
更新を含まない方法) がある可能性もあります。
私は何かを誤解しましたか?
おまけの質問: django-MPTT に、特定のモデルのすべてのインスタンスの再構築lft
と値を強制する方法はありますか?rght