我在建立这些关系并在我的应用中获取正确的数据时遇到了一些麻烦。我有用户,链接和书签。书签是连接表的位置,因此用户可以有许多书签,链接可以有许多书签
<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
tools:context="com.example.manish.planetdelhi.MainActivity">
<android.support.design.widget.AppBarLayout
android:id="@+id/appbar"
android:layout_width="match_parent"
android:layout_height="192dp"
android:fitsSystemWindows="true"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar">
<android.support.design.widget.CollapsingToolbarLayout
android:id="@+id/collapsing_toolbar"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
app:contentScrim="?attr/colorPrimary"
app:layout_scrollFlags="scroll|exitUntilCollapsed">
<ImageView
android:id="@+id/header"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/midu_cover"
android:contentDescription="@string/paralax"
android:fitsSystemWindows="true"
android:scaleType="centerCrop"
app:layout_collapseMode="parallax" />
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
app:layout_collapseMode="pin"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light" />
</android.support.design.widget.CollapsingToolbarLayout>
</android.support.design.widget.AppBarLayout>
<android.support.v7.widget.RecyclerView
android:id="@+id/detail_recycler_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior" />
<android.support.design.widget.FloatingActionButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/fab"
android:layout_margin="10dp"
app:layout_anchor="@+id/appbar"
app:layout_anchorGravity="bottom|right|end"
android:src="@android:drawable/ic_input_add" />
</android.support.design.widget.CoordinatorLayout>
在firebase中,这就是我的数据:
<!-- user -->
export default DS.Model.extend({
username: DS.attr('string'),
bookmarks: DS.hasMany('bookmark', { async: true }),
});
<!-- link -->
export default DS.Model.extend({
title: DS.attr('string'),
url: DS.attr('string'),
bookmarks: DS.hasMany('bookmark', { async: true }),
});
<!-- bookmark -->
export default DS.Model.extend({
link: DS.belongsTo('link', { async:true }),
user: DS.belongsTo('user', { async:true })
});
在ember中,当我提取user
- userkey
- bookmarks
- bookmarkkey : true
link
- linkkey
- bookmarks
- bookmarkkey : true
bookmark
- bookmarkkey
- link : linkkey
- user : userkey
模型时,我可以访问相关的user
,但不能访问与书签相关的bookmarks
。
我该如何解决这个问题?
编辑1 这就是我尝试访问书签和链接的方式:
link
然后在模板中这样:
store.findRecord('user', userId).then((user) => {
this.set('bookmarks', user.get('bookmarks'));
})