领域 - java和多对多关系

时间:2016-03-14 10:42:21

标签: java android realm

如何在Android上使用Realm数据库创建多对多关系?例如,我需要两种类型的对象:PostObject和HashTagObject,彼此链接,类似这样。

public class PostObject extends RealmObject {
    @PrimaryKey
    private int id;
    private String text;
    private RealmList<HashTagObject> hashtags;
}

public class HashTagObject extends RealmObject {
    @PrimaryKey
    private int id;
    private String tag;
    private RealmList<PostObject> posts;
}

我希望能够创建帖子并为其附加主题标签,同时还能够获取使用主题标签的帖子。这是正确的实施吗?如果我已经拥有主题标签或如何使用现有主题标签,该如何创建主题标签?

当我创建新帖子时,我会这样做:

realm.beginTransaction();

PostObject post = realm.createObject(PostObject.class);
post.setText("New post");

HashTagObject tag = realm.createObject(HashTagObject.class);
tag.setTag("tag");
tag.getPosts().add(post);

post.getTags().add(tag);    
realm.commitTransaction();

当我创建另一个时,我也会这样做。

据我所知,这个会每次都创建新的#标签,最后我会有两个标签&#34;标签&#34;的标签对象,而我想只有一个标签&#34;标签&#34;

0 个答案:

没有答案