Простое продуктовое приложение на Android. Все локально с использованием Room DataBase, с использованием модели MVVM и Kotlin. У меня есть DataBase
, Repository
и ViewModel
. Я практикуюсь с этим приложением, и мне не нравится DataBase
в настоящее время.
У меня две таблицы:
ShoppingItems
(элементы, которые я хочу) ReferenceItems
(Товары, которые я обычно покупаю и знаю цену)
В таблице ReferenceItems
у меня есть 3 столбца:
- Id
- Имя (уникальное)
- Цена за единицу
В таблице ShoppingItems
у меня есть следующие столбцы:
- Id (PrimaryKey)
- Имя
- Сумма
- Идентификатор ссылки (внешний ключ) (если идентификатор находится в таблице ссылок, иначе я получил идентификатор из справочного элемента по умолчанию, который я предварительно внес в таблицу)
- Цена за единицу (= соответствующая эталонная цена за единицу)
Теперь все работает отлично, используя LiveData<>
для чтения такой информации, как количество или общая цена.
Мой вопрос: могу ли я использовать только идентификатор ReferenceItems
в таблице ShoppingItems
, чтобы получить цену за единицу.
Фактически, пользователь сможет редактировать цену за единицу в ReferenceItems
таблица при необходимости. Я хочу, чтобы приложение обновляло только ОДНО поле в таблице ReferenceItems
. В реальной ситуации мне придется обновить цену в ReferenceItems
таблице И ShoppingItems
таблице.