2016-04-11 32 views
0

Android'de bir ORM kütüphanesi var mı, yabancı alan/koleksiyon içeren POJO'yu yerleştirmeye izin veriyor mu? Onu olanları içerir yapmakAndroid ORM, doğrudan bir çok ilişkiye izin veriyor mu?

  1. takın ebeveyn
  2. Bağlantı üst nesnenin
  3. takın çocuk
  4. öğesini güncelleme için bir alt alanı: o Çünkü (Android için ORMLite) genellikle bu gibi çalışır bulundu yabancı alan

Kodumu çirkin bütün iç çocukları aramak zorunda buldum. Sadece ebeveyni yerleştirmek istiyorum ve çocuk otomatik olarak eklenecek, bu mümkün mü?

Bu henüz takılmamış yabancı alanın tam ebeveyni eklemek için şimdi ne şudur:

CategoriesDAO.getInstance().addOrUpdate(categories); 

    for (EntityCategories.EntityCategory currentCategory : new ArrayList<>(categories.getCategories())) { 

     if (currentCategory.getmPlans() != null) { 
      for (EntityPlan myPlan : new ArrayList<>(currentCategory.getmPlans())) { 
       EntityPlan oldPlan = PlanDAO.getInstance().queryById(String.valueOf(myPlan.getmId())); 
       myPlan.setCategories(currentCategory); 
       if (oldPlan != null) { 
        if (!myPlan.getmDateModification().equals(oldPlan.getmDateModification())) { 
         PlanDAO.getInstance().addOrUpdate(myPlan); 
        } 
       } else { 
        PlanDAO.getInstance().addOrUpdate(myPlan); 
       } 
      } 

     } else { 
      continue; 
     } 

     LabelDAO.getInstance().addOrUpdate(currentCategory.getmLabel()); 
     currentCategory.setCategories(categories); 
     CategoryDAO.getInstance().addOrUpdate(currentCategory); 
    } 
+0

'Realm''ü deneyin. Orada istediğin gibi çalışmalı. https://realm.io/ –

+0

@Jabbar_Jigariyo Realm ile ilgili sorun Retrofit ile kullanmak için bir acı gibi görünüyor ... Özel bir desperizatör yazmalı ve bunları kullanan bazı insanlar hem iplik sorunu var gibi görünüyor. – Jaythaking

+0

Aslında Realm'i retrofit ile kullanmak acı verici değil. Ayrıca, o kadar hızlı gelişiyorlar ki, birkaç ay önce karşılaştığınız her hangi bir problem, muhtemelen zaten düzeltildi. Bir üretim uygulamasında Realm + Retrofit'i başarıyla kullanıyorum. –

cevap

0

kontrol dışarı onam (Nesne İç İçe Erişim Yönetimi), bir MİT lisanslı kütüphane - https://github.com/basilgregory/ONAM4Android.

Android'de sqlite için basit bir ORM/kalıcılık çerçevesidir. Hafif de. Yuvalanmış kalıcılığı, bulucu yöntemleri, işlemleri ve çok daha fazlasını içeren ilişkileri destekler.

(Gönüllü Destek: ONAM'i koruyan ekibin bir parçasıyım)