如何在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;