Blog

【jQuery】nestedSortable jQuery Plugin

前から気になっていたですが、ついてにLaunchCartに実装を実現できました。
nestedSortableのjQueryプラグインです。

レイアウト

さすがネストであることで、親カテゴリ>子カテゴリ>孫カテゴリのような階層を作るのに、上記なものを作る必要あります。
プログラムを組むのは難しそうなので、辛抱強くtwig関数を作って対応しました。

serializeなどの関数を使うために

サンプルでは、

で書くと、
id = “serializeOutput” のブロックに、

のようなものが出てくるハズですが。。

実は、裏条件があります。
liタグのidを、”list_” + category.id にすることです!
どこにも書いていないから、原因を特定し、探し出すのに時間かかりました。

Doctrine2 NestedSetと連動するには

細かく書かないですが、編集した順番と階層をDBに入れる作業がります。

Doctrine2 NestedSetでは、順番に対応していない仕様なので、一回Doctrine2 NestedSetを使って階層だけを更新して、あとで手動で順番を更新するようにしました。
仕様を確認しスクリプトを書いてテストするのに、一苦労でしたが、とりあえず実用できるレベルに達したかと思います。

Author Profile

jeff_maj
システムエンジニア/1984年生/上海交通大学卒/Webサービス/EC/iphone/android
» 投稿一覧
  • Launch Cart次世代ECサイト構築システム 初期月額無料
  • LaunchMovie ECに特化した動画制作サービス

Archive

ページTOPへ