2009-04-29 39 views
8

Bu, çoklu olayları çözmek için uğraştığım oldukça sinir bozucu bir sorundur ve hiçbir zaman tatmin edici olmayan bir çözüm buldum.Bir web uygulamasında hiyerarşik verileri görüntülemek için zarif bir yol

Web uygulamanızın kullanıcısına sunmak zorunda olduğunuz 'karmaşık' bir hiyerarşik veri yapınız olduğunu ve hiyerarşideki birçok düğümün de düzenlenebilir olması gerektiğini varsayalım. Örneğin, her bir Projenin kendileriyle ilişkili birden fazla görevi olabileceği Proje ayrıntılarını sunmanız gerektiğini varsayalım. Artık bir kullanıcı bir projeyi düzenlemek (örneğin ismini değiştirmek) ya da kendisine özel bir Görev eklemek, bir görevi düzenlemek veya bir tane kaldırmak isteyebilir.

Genelde bununla ilgili olarak bir Projeler tablosu ve bir Proje formu Bir kullanıcı proje tablosunda bir satırı tıklattığında, form Proje ayrıntılarını yansıtacak şekilde doldurulur ve söz konusu Proje için görevleri içeren başka bir tablo doldurulur. Bu yaklaşım, hiyerarşinizde çok fazla seviyeye sahip olduğunuz halde oldukça karmaşıktır ve istediğiniz kadar veriyi saklayıp saklamayacağını ve boş yer tutucuları vb. Görüntülemeye veya kaydırmayacağınızı asla bilmiyorum.

Bu yüzden benim sorularım: bu sorunun zarif bir şekilde çözüldüğü herhangi bir örneği biliyor musunuz? Bir UI tasarımı/en iyi uygulama perspektifinden en iyi olana dair bir fikir birliği var mı? (Bu dili/platformu agnostik olarak kasıtlı olarak sakladım).

Tüm önerileri takdir ediyoruz.

cevap

1

Tesadüfen şu anda aynı tür projelerle çalışıyorum.
Sorunun "evrensel" bir çözümü yok. Her şey bağlama bağlı.

  • Verilerin nasıl gösterilmesi gerekiyor?
  • Kullanıcı verileri nasıl görüntülüyor?
  • Kullanıcı, verilerle nasıl etkileşime giriyor?

Çok fazla soru var ve her bağlamın kendi yanıtları var.
Her kullanıcı aynı bağlamda farklı yanıtlara sahip olabilir, ancak her bir kullanıcıyı tatmin etmek için böyle bir şey geliştirmek imkansızdır. Birisi taviz vermek zorunda.

Peki ... Bu benim iki sentim zaten.

2

İç içe geçmiş formlara ilişkin bir JavaScript örneği için (düzenleme ve görüntüleme seçenekleriyle birlikte), the jqGrid Demos var. Böyle bir örnek için Örnekleri -> Gelişmiş -> Subgrid'un altına bakın.

Ama evet, bunu çözmek için doğru bir yol yoktur, ama ben onunla geldiğimde size bildiririm. :)

İlgili konular