ActiveAndroid lib和外键

时间:2014-04-13 11:35:10

标签: android sqlite libs activeandroid

我使用active android在Android上使用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;
    }

1 个答案:

答案 0 :(得分:2)

首先,你应该仔细检查你的代码。我尽可能地清理它,但它看起来仍然有一些错误,例如成就拼写错误,成就构造函数是复数。

要设置成就与宠物记录之间的关系,您需要将宠物列更改为以下内容:

@Column(name = "Pet")
public Pet pet;

有关详细信息,请查看此ActiveAndroid Wiki page