Предположим, у меня есть список данных в комнате DB.Пусть данные будут: setId, formId, formName.В одном наборе может быть несколько formId.Пусть setId 1 содержит 10 форм, 2 содержит 5 форм.
Теперь я хочу извлечь данные из БД, используя setId в ViewModel.
Пусть мой дао будет:
@Query("SELECT * FROM form WHERE setId = :id")
LiveData<List<Form>> getAllFilledForms(int id);
Как я могу реализовать такое действие во ViewModel.Я хочу получить весь список форм, в которых установлен идентификатор, пусть 1.
Редактировать: ViewModel Класс:
public class ListSetViewModel extends AndroidViewModel {
private final LiveData<List<FormSet>> allFormSets;
private FormDatabase formDatabase;
public ListSetViewModel(@NonNull Application application) {
super(application);
formDatabase = FormDatabase.getDatabase(application);
allFormSets = formDatabase.formSetDao().getAllFilledForms(setId);
}
public LiveData<List<FormSet>> getAllFormSets(setId){
return allFormSets;
}
}