столкнулся с проблемой с @Relation в roomdb android - PullRequest
0 голосов
/ 05 мая 2020
 public class StockRelation extends Item {
        @Relation(parentColumn = "mpc", entityColumn = "itempc", entity = Location.class)
        public List<Location> locationList;
    }

    public class RStockRelation extends StockRelation{
       @Relation(parentColumn = "mpc", entityColumn = "location_itemid", entity = Location.class)
       public List<Location> locationList;
    }

здесь изменяется только @Relation, тогда как все остальное остается таким же. и я хочу выполнить порядок сортировки списка местоположений на основе столбца в таблице местоположений в самом запросе. Итак, как иметь окончательные данные в одном объекте вместо двух разных StockRelation и RStockRelation. Есть ли другой способ исправить это

1 Ответ

0 голосов
/ 06 мая 2020

Как я понял, у вас есть две таблицы (сущности), и в целом вы хотите применить два левых соединения из первой таблицы ко второй в разных полях - чтобы получить в результате ваш первый объект с подключенными двумя разными списками местоположений (но используйте Room -Relation annotation вместо left join).

Если это то, что вы хотите, попробуйте следующее:

public class StockRelation extends Item {
@Relation(parentColumn = "mpc", entityColumn = "itempc", entity = Location.class)
public List<Location> locationList1;
@Relation(parentColumn = "mpc", entityColumn = "location_itemid", entity = Location.class)
public List<Location> locationList2;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...