Когда я запрашиваю некоторые данные о квартире из серверной части REST API Spring из Angular внешнего интерфейса, я получаю полную информацию о моем внутреннем объекте. Проблема в том, что модель на бэк-энде сложна - имеет отношения @OneToMany
, @ManyToMany
, и я хочу отобразить их на лицевой стороне. Я понятия не имею, как сделать это правильно.
Мой текущий подход - поместить каждое свойство в модель. Но мне нужно, чтобы мои модели спереди были отделены от изменений на внутренней стороне.
Каждый Apartment
имеет Address
ссылку и Clients
внутри json ответа. Я хочу сохранить их в передней модели.
Тестовый ответ:
{
"responseMessage": "houses fetched successfully",
"body": [
{
"id": 2,
"address": {
"id": 1,
"city": "FakeCity",
"postalCode": "99-743",
"street": "FakeStreet",
"buildingNum": "14",
"apartmentNum": 21
},
"clients": [
{
"id": 3,
"firstName": "John",
"lastName": "Tester",
"email": "example@test.com",
"username": "myTestUser",
"password": "<hashed>",
"currentAddress": 1, //id reference (to prevent circural fetching)
"properties": [
2 //id reference to propery(apartment) to prevent circural fetching
]
}
],
"apartmentPicture": null
}
],
"httpStatus": "OK"
}
Должен ли я:
- Создать одну модель для каждой сущности и использовать их в каждой другой модели?
- Создать другую модели для каждой страницы (компонента) и получить только необходимую информацию для контекста на странице? (Ко многим моделям)
- Какой-то другой подход?