2009-04-29 6 views
8

これは私が複数の場面で解決しなければならなかったかなりイライラしている問題であり、私は完全に満足できる解決策を見出しませんでした。ウェブアプリケーションで階層的なデータを見るためのエレガントな方法

「複雑な」階層データ構造があり、Webアプリケーションのユーザーに提示する必要があり、階層内のほとんどのノードも編集可能であるとします。たとえば、プロジェクトの詳細を提示しなければならないとします。各プロジェクトでは複数のタスクが関連付けられています。ユーザは、プロジェクトを編集したり(例えば名前を変更するなど)、タスクを追加したり、タスクを編集したり、タスクを削除したりすることができます。

私は一般的にこれについてプロジェクトテーブルとプロジェクトフォーム。ユーザーがプロジェクトテーブルの行をクリックすると、フォームはプロジェクトの詳細を反映するために入力され、その特定のプロジェクトのタスクを含む別のテーブルが入力されます。あなたが階層にたくさんのレベルを持っているときには、このアプローチはややこんでいるように思えます。そして、それが要求されるまでデータを非表示にするか、空のプレースホルダなどを表示したり表示したりするかは決して分かりません。

私の質問は次のとおりです。この問題がエレガントな方法で解決された例をご存知ですか? UIデザイン/ベストプラクティスの観点から何が最良であるかについてのコンセンサスはありますか? (私は意図的にこの言語/プラットフォームにとらわれないようにしている)。

すべての提案をいただければ幸いです。

答えて

1

私は現在、同じ種類のプロジェクトで作業しています。
この問題には「普遍的な」解決策がありません。それはすべてコンテキストに依存します。

  • どのようにデータを表示するのですか。
  • ユーザーはどのようにデータを表示していますか。
  • ユーザーはどのようにデータとやりとりしますか。

多くの質問があり、それぞれの文脈には独自の回答があります。
各ユーザーは同じコンテキストで異なる回答をすることさえありますが、すべての単一ユーザーを満たすためにこれを開発することは不可能です。 1つは妥協をしなければならない。

まあ...とにかく私の2セントです。

2

ネストされたフォームのJavaScriptの例(編集オプションと表示オプションのヒープ)には、the jqGrid Demosがあります。 例 - >詳細 - >サブグリッドのような例を見てください。

しかし、はい、これを解決する真の方法はありませんが、私がそれを思い付くと、私はあなたに知らせます。 :)

関連する問題