Bir MySQL veritabanı kendi kimlikleri için javascript nesneleri Haritalama

3 Cevap php

This is a question that I have been pondering for a long time, ama bunu açıklamak için nasıl emin değildi çünkü ben hala ben de bunu açıklamak ama burada o giderse emin değilim .. sormak istemedim ..

Ben sayfadaki öğelerin bir demet yönetmenize olanak sağlayan bir web uygulaması var, ama tek bir tuşa kaydetmek oldu. Ben kaydetmek vurduğunda ben tüm bu değişikliklerin (değil aşamalı) bir POST / güncelleme oluşturmak istiyoruz. Bu html elemanları sayfadaki ilk kez oluşturulan olsaydı, ben veritabanına yeni giriş olarak eklemek istiyorum. Bu değişikliklerin ilk kez (oluşturulan) için veritabanına kaydedilir, ben endeks kimliğini iade, bu yüzden tekrar bir değişiklik yaparsanız, onlar veritabanında güncellenir yerine yeniden oluşturulur.

Ne zor kılan bu tasarruf harmanlanmasından böylece tüm bu bant genişliği almaz. Ben karıştırmak mümkün olmak istiyorum ve maç oluşturur ve güncellemeleri, ama yaratılan elementlerden kimlikleri geri gönderme ve doğru html elemanlarının (yani onlar sefere güncellenecektir) onları haritalama her batched elemanın sırası hakkında bir şeyler bilmek beni gerektirir ki bazı sorunlara yol açar. Oluşturur veya güncellemeleri yapmak ve doğru bir geri ajax isteği altında çeşitli unsurları kimlikleri eşleştirmek için akıllı bir yol olup olmadığını merak ediyordum.

Umarım bu açıktı, sen açıklama gerekiyorsa bana bildirin

Thanks, Matt Mueller

3 Cevap

Sen sadece yeni oluşturulan elemanlar için negatif otomatik indirildiği kimlikleri kullanın ve pozitif kimlikleri negatif bir harita dönebilirsiniz. Örneğin, iade {-1: 510, -2: 511}, [{id: 507, name: "foo"}, {id: -1, name: "bar"}, {id: -2, name: "baz"}] göndermek ve javascript haritada dayalı kimlikleri güncellemek.

iyi, yükleme üzerine, veritabanında sonraki sayfa rol var ne kimliği, db den next ID getir, sen biliyorsun. O, yaratılış üzerine, javascript bu çalışabilirsiniz - yani:

Sonraki ID 15 olduğunu, bu nedenle sonraki alanı eklediğinizde, bu kimliği 16 ve ID 17 yığını var ... ve sen bir yeni oluşturulan alanını sildiğinizde, her yüksek ID tek aşağı kaydırmak için sorun değildir bu.

Sonra, tasarruf komut, daha önce getirilen ne daha büyük her ID "kaydedilecek" ve her küçük güncelleştirilmesi olduğunu biliyorum.

Yeni bir unsur oluşturulduğunda sayfanız biliyorsa, o parametrelerin bu grup için "id" parametresi için düzenlemek gerekir ya boş (ürünle birlikte verilmez) veya bazı işaretleyici değer olarak (yani, işletmenin nitelikleri eklenecek) . Zaten var olan kişiler müşteri tarafından değiştirilebilir olmaz onların ID değeri var. Sunucu sadece boş olmayan değerleri olanlar boş ID değerleri ile parametrelerin gruplara ayırmak zorundadır.

Müvekkilin da silinmek üzere öğeleri işaretlemek isteyebilirsiniz. Bu durumda, zaten mevcut olan kişiler kendi kimliği "BENİ SİL" gösteren bazı bayrak parametresi ile geri gönderildi olurdu. Önce oluşturulan ve sonra silinir kişiler "Gönder" hiçbir sunucu işleme gerekir.