Добрый день!
Курс 3. Задание на программирование 4. Добавление экрана проектов выбранного пользователя.
https://www.coursera.org/learn/android-app-architecture/peer/zkqMc/dobavlieniie-ekrana-proiektov-vybrannogho-pol-zovatieliaПри возвращении на ProjectsFragment из ProfileFragment (если побывали на UserProjectsFragment) - данные портятся необратимо.
1. Если оставлять работу с БД как в проекте, то при входе в UserProjectsFragment а) project пополняется проектами конкретного пользователя б) owner-ы проектов стираются (там очистка таблицы) и заливается набор владельцев == пользователю, проекты которого мы смотрим.
2. ОК. боремся с п. 1.б - убираем очистку таблицы owner, лучше не становится. Причина - PK в таблице owner - id, а авторы проекта при каждом вливании id нумеруют с 0 и до скольки вливается. Допустим, делаем полю
owner.id автогенерацию
@PrimaryKey(autoGenerate = true) - стало получше, владельцы при возврате на самый первый экран видны, но список проектов уже не тот.
Т.е. после хождения в список проектов пользователя в таблице проектов находятся записи, которые были загружены изначально (при старте грузятся проекты, отобранные по слову motorcycle) и те, у которых владелец - пользователь, в проекты которого мы заходили. При заходе еще в одного пользователя - подгружаются и его проекты и т.д.
Задание-то формально выполнено, два фрагмента от абстрактного класса, две vm тоже от абстрактного. Но по факту приклад толком не работает.
Второй день кручусь с этим сохранением в БД!
Подскажите направление куда копать, пожалуйста!