ActiveAndroid lib والمفاتيح الخارجية
-
21-12-2019 - |
سؤال
أنا استخدم الروبوت النشط للعمل مع SQLite على الروبوت.
على سبيل المثال، لدي ما يلي Pets
الجدول مع هذا الهيكل:
@Table(name = "Pets")
public class Pet extends Model {
@Column(name = "Name")
public String name;
@Column(name = "Gender")
public String gender;
@Column(name = "DoB")
public Date dob;
public Pet() {
super();
}
public Pet(String name, String gender, Date dob) {
super();
this.name = name;
this.gender = gender;
this.dob = dob;
}
}
كيف أظهر في جدول ثاني يسمى Achievements
, ، أنه يحتوي على مفتاح خارجي لـ primary_key
التابع Pets
طاولة.
هذا هو أنني أفعل شيئا مثل هذا
@Table(name = "Achievements")
public class Achievement extends Model {
@Column(name = "name")
public String name;
@Column(name = "pet_id")
public Pet pet;
public Achievements() {
super();
}
public Achievements(String name,Pet pet) {
super();
this.name = name;
this.pet = pet;
}
المحلول
أولاً، يجب عليك التحقق مرة أخرى من الكود الخاص بك هنا.لقد قمت بتنظيفها بأفضل ما أستطيع ولكن لا يزال يبدو أن لديك بعض الأخطاء هناك، مثل كتابة الإنجازات بشكل غير صحيح ومنشئ الإنجازات بصيغة الجمع.
لإعداد العلاقة بين الإنجاز وسجل الحيوان الأليف، يتعين عليك تغيير عمود الحيوان الأليف ليكون كما يلي:
@Column(name = "Pet")
public Pet pet;
لمزيد من التفاصيل نلقي نظرة على هذا صفحة ويكي ActiveAndroid.
لا تنتمي إلى StackOverflow