問題タブ [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.

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

mysql - MPTT はスケーリングが非効率的ですか?

Modified Preordered Traversal Trees に大きく依存する CakePHP ACL を使用しています。私たちは、それらがどれほど簡単にスケーリングできるかを心配してきました。

lft行とrght列を更新する必要がある行が増えるにつれて、挿入のコストが急速に高くなることは明らかです。

私が仮定するのは正しいと思う2つのこと:

  1. UPDATE クエリ自体は、DB サイズに関係なく同じままであるため、それほど重要ではありません。
  2. 実際のファイルシステムに対するデータベースの読み取り/書き込み操作は、明らかにますます高価になり始めています。

私が見逃しているものはありますか?これといくつかの理由から、NoSQL DB への移行を検討しています。非標準のデータ ソースを使用することになるため、Cake でこれを行うのが怖いです。

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

django - Django - Grappelli、mptt、およびソートフィールドの問題

優れたソート可能なフィールド機能のために、Grappelli admin を使用しています。ただし、mpttで動作させることができないようです。これが私のコードです:

これは私の管理者です:

そして最後に、これが私のテンプレートです:

問題は、class Item(models.Model):モデルで管理者機能を使用すると、ソート可能であり、すべて正常に機能しますが、テンプレートが失敗して、

タイプ オブジェクト 'MenuItems' には属性 '_mptt_meta' がありません

そして、私がすべてを使用すると、class MenuItems(MPTTModel):すべてが逆になります。私のテンプレートは正常に動作しますが、管理画面でフィールドを並べ替えることができません (「位置」番号は変更されますが、他には何もありません。アイテムは元の順序でリストされます。

それで、これら2つのことを一緒に機能させることが可能かどうか、または別の方法を見つける必要があるかどうかを誰かが知っているかどうか疑問に思っていました...

ありがとう!

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

python - Django で競合する MPTTModel と TransMeta

私のジャンゴモデルに問題があります。

これは私のモデルです:

TransMeta と MPTTModel という 2 つのモデルを 1 つのモデルで連携させようとしています。実行しようとすると、エラーが発生します。

TypeError: メタクラス ベース メタクラスの競合を呼び出すときにエラーが発生しました: 派生クラスのメタクラスは、そのすべてのベースのメタクラスの (厳密ではない) サブクラスでなければなりません

Google で同様の解決策を見つけました: http://code.activestate.com/recipes/204197-solving-the-metaclass-conflict/で、コードを次のように変更しました。

classmaker はこのコードhttp://code.activestate.com/recipes/204197-solving-the-metaclass-conflict/#block-0です。しかし、翻訳は機能しません。model.name を取得しようとすると、エラーが発生します。

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

mysql - 複数のユーザーによるツリーの同時編集?

DBに保存する必要がある階層カテゴリのようなツリーがあります。このデータを保存するために MPTT (ネストされたセット) を使用しました。

問題は、このカテゴリを複数のユーザーが、場合によっては同時に編集できるようにする必要があることです。

ユーザーに過度の制約を課すことなく、構造の完全性を維持するにはどうすればよいでしょうか?

構造内の要素を変更すると、他の要素にも影響を与えるという MPTT の性質を考えると (左右の値の変更)。

例のために。ユーザー A が Node1 を削除し、ユーザー B が Node1 の下に Leaf1 を追加します。これにより、Node1 がもう存在しないというエラーがユーザー B に表示されるはずですが、ユーザー B を混乱させるだけだと思います...

この問題に対する実用的な解決策はありますか?

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

java - Modified Preorder Tree Traversal データを Java ツリー オブジェクトに入力する方法は?

MPTT構造を持つ次のテーブルがあります。

CakePHPでは、次のデータ構造を作成できます。

問題は、 Javaツリー クラスを使用してJavaでMPTTデータ構造を作成する方法です。はい、私はJavaがPHPのように動的配列を持つことができないことを知っています。Java ではクラスModelを使用する必要があります。

私のモデルクラスは次のようになります。

私はそれが非常に紛らわしく、それを行う方法がわかりません。データベースからのデータはJavaツリー オブジェクトに取り込まれます。どうすればいいのかわからない、完全に入力する方法がわかりません。Vivin の GenericTree Java クラスを使用しています

データベースからすべてのデータを取得するには、再帰関数が必要ですか? 1.データのクエリ、2.すべてのデータをツリーオブジェクトに入力します。

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

django - mptt を使用した Django モデルの継承

ネストされたツリー分類を使用してモデルを構築しています。ボキャブラリEntityは抽象基本クラスから継承されTreeVocabularyます。SpecialEntityから継承するクラスもありEntityます。には、いくつSpecialEntityかの追加フィールドがあるはずです。

Entityどちらもツリーである必要がありSpecialEntity、そのために mptt http://django-mptt.github.com/django-mptt/を使用します。にEntity子を持つレコードがあるはずですSpecialEntity(これらの子は のルート要素ですSpecialEntity)。

これは私がこれを想像する方法です:

さて、問題は、何らかの理由でSpecialEntitymptt をエスケープすることです: 含まれていsqlallないプレーンなテーブルを表示parent_idします。に存在しますがEntity、 から直接継承しTreeVocabularyます。

django-mptt のバグですか? それともデザインが悪いのでしょうか?私は私のためにそれを設計するように頼んでいるのではなく、正しい方向に向けることを求めています

前もって感謝します!

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

python - Django MPTT:深さでフィルタリングしますか?

django-mptt をエンジニアリングコーディネーションプロジェクトに使用することを検討しているので、django-mptt について教えてください。

ツリーに Model クラス (たとえば「Interface」) があり、モデルへの ForeignKey (たとえば「Location」) があります。

インターフェイスが参照する場所の深さでインターフェイスをフィルタリングできますか? 深さは親の数です。

データを整理する方法がまだわからないので、質問しています。私は django-mptt の使用を検討しています (展開時にループによって作成されたモデルとは対照的に、各モデルはツリー レベルに対応しています) が、ある時点でブロックされ、プロジェクト全体のレビューを余儀なくされるのではないかと心配しています。

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

python - Django MPTT の注文

Django プロジェクトで MPTT ツリー構造を使用してコメントを整理しています。コメントとコメントのコメントの2つのレベルしかありません。順序付けを除いて、すべてが完全に機能します。

親を持たないすべてのコメントを作成日の昇順 ("-creation_date") で並べ替え、親を持つすべてのコメントを作成日の子孫 ("creation_date") で並べ替えたいと思います。基本的には、Facebook ウォールでコメントが機能しているようなものです。(常に最新のコメントが一番上に表示されますが、コメント内のコメントは逆順です)

私のクラスのコメントには、次の MPTTMeta があります: order_insertion_by=['creation_date']

助けてくれるといいのですが。

ありがとうございました

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

sql - MPTTは、深さが3〜4程度であっても、データベースのようなツリーを維持するのはやり過ぎですか?

MySQLにデータのようなツリーを保存することを計画しています。
トピックにはサブトピックを含めることができ、さらにサブトピックを含めることができます。
最大深度が約3〜4であっても、Modified Preorder Tree Traversal(MPTT)はオーバーキルですか?

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

python - Python構造への変更されたプレオーダーツリートラバーサル

こんにちは私はModified-Preorder-Tree-TraversalをPython構造として表現しようとしています。現在の目標は、jstreeにツリーを表示することなので、jsonに出力できます。

http://imrannazar.com/Modified-Preorder-Tree-Traversal(私の場合は各行にもparent_idがあります)のようなテーブルがあるとします 。

jstreeのJson形式は次のようになります

上記のテーブルをPython形式に変換して、このjsonを出力するにはどうすればよいですか。

どういうわけか、以下のようにネストされた辞書を使用することを考えました

ただし、必要なアルゴリズムがわかりません。

どんな助けでも大歓迎です。

ありがとう