dbix :: tree :: nestedset.

「入れ子のセット」の親/子ツリーを実装する
今すぐダウンロード

dbix :: tree :: nestedset. ランキングとまとめ

広告

  • Rating:
  • ライセンス:
  • Perl Artistic License
  • 価格:
  • FREE
  • 出版社名:
  • Dan Collis Puro
  • 出版社のWebサイト:
  • http://search.cpan.org/djcp/

dbix :: tree :: nestedset. タグ


dbix :: tree :: nestedset. 説明

「ネストしたセット」の親/子ツリーを実装する DBIX :: TREE :: NestedSetは、「入れ子になったセット」を実装しているPerlモジュールです。 :ネストセット分布は厳密です。警告を使用する。 dbix :: tree :: nestedsetを使用してください。 DBIを使用する。 #つながりを付けます。 SQLiteを今すぐ使用します。 #my $ dbh = dbi-> connect( 'dbi:mysql:test'、 'user'、 'pass')またはdie($ dbi :: errstr); My $ DBH = dbi-> connect( 'dbi:sqlite2:test')またはdie($ dbi :: errstr); My $ DB_TYPE = 'sqlite'; #my $ db_type = 'mysql'; My $ tree = dbix :: tree :: nestedset-> new(dbh => $ dbh、db_type => $ db_type); #このドライバのテーブルがどのように作成されるかを確認しましょう。 「; $ tree-> get_default_create_table_statement()を印刷する。 ";#$ tree-> create_default_table();#rootノード。私の$ root_id = $ tree-> add_child_to_right(name => 'food'); #second level; $ tree-> add_child_to_right(ID => $ root_id、name => '野菜'); My $ ANIMIN_ID = $ tree-> add_child_to_right(id => $ root_id、name => 'Animal'); My $ MINELAL_ID = $ tree_to_right( ID => $ root_id、name => 'minerer'); #tirdレベル、「野菜」の下の( 'froot'、 'beans'、 'gresumes'、 'tumers'){$ tree-> add_child_to_right(id => $野菜_id、name => $ _); #tird "の"動物 "の下にある( 'beef'、 'chicken'、 'seafood'){$ tree-> add_child_to_right(id => $ animal_id、name => $ _;#}#豚肉を忘れていました!他の白身肉だからです。 #OOPS。ミスペリング。$ tree-> edit_node(id => $ tree-> get_id_by_key(key_name => 'name'、key_value => 'froot')、name => 'fruit');#get#の子ノード第2レベル「Animal」ノードMy $ Children = $ tree-> get_self_and_children_flat(id => $ anim al_id); #最初のノードは、このサブツリーの「動物」と#parentです。私の$ parent = Shift @ $ Children。 「親ノード:」を印刷します。$親 - > {name}。」 「;#子供たちを通して、何かをする。私の$児童(@ $子供){印刷 '子供ID:'。$ child - > {id}。 '。$ child - > {name}。」 "; #mineral?それを取り除く。$ tree-> delete_self_and_children(id => $ minereral_id); #printモジュールに組み込まれた基本レポート。印刷する」 完全なツリー: "; $ tree-> create_report()を印刷します。このモジュールは「ネストしたセット」の親/子ツリーを実装しており、Webアプリケーションの開発を容易にするメソッドを提供するために(少なくともマインカム)に焦点を当てています。一般的に役立つはずです。 whestedセットツリーの利点と機能を説明するリソースについては、「関連項目」を参照してください。このモジュールは、任意のレベルのノード、DBIを介した単純なメソッドの引数とストレージを介してノードに関連付けられたメタデータに入れる機能を提供します。 mySQLおよびSQLiteバージョン2のために現在ドライバが実装されています。 (DBIX :: Tree :: NestedSet :: NestedSet :: MySQL)を参照してください。 、木の照会のほんの質問に「安く」 Eほとんどすべての行動(子供たちの取得、両親の取得、兄弟など)は1つのSQL文で行うことができます。これまでに構築された)ネストされたセットは、典型的な隣接リストモデルによって必要とされる再帰的クエリよりも大きなパフォーマンスの利点を提供するべきです。速い3回。create_default_table()メソッドを使用して、RDBMSにネストしたセットテーブルを作成します。要件: ・Perl


dbix :: tree :: nestedset. 関連ソフトウェア