Подготовка данных для представления формы (django, drf, axios, vuejs)
Я создаю веб-приложение с помощью Django, DRF, Axios и Vuejs. Оно работает, но мне интересно, какова лучшая практика для обработки таких случаев. Рассматривая форму ниже :
Я хочу создать элемент, для которого я могу назначить компанию и контакт. Компания является самостоятельной моделью, также как и контакт. В поле Contact отображаются только контакты для выбранной компании.
Как я должен запрашивать данные, чтобы быть максимально RESTful?
- Query all the companies, query all the contacts, and make a computed property that shows only contacts of the currently selected company ?
- Query all the companies, and each time I select a company I query related Contacts only ?
- Other solution ?
У обоих есть плюсы и минусы, и мне интересно, какой способ лучше всего подходит для такой ситуации. Также, если есть стандартные способы проектирования этого.
Вызовите GET API для всех "компаний", затем, когда пользователь выберет компанию, вызовите GET API для "контактов". Так обычно делается в корпоративных приложениях, например, при выборе страны, а затем города.
Но вы должны взвесить все плюсы и минусы каждого метода. Подумайте об отдаленном будущем вашего приложения. Если вы будете расширяться, увеличится ли количество компаний и связанных с ними контактов? Тогда будет эффективно получать контакты только тогда, когда пользователь выбирает компанию. Если нет, и вы знаете максимальное количество компаний и их последующих контактов, и вы знаете, что это количество достаточно мало, чтобы загрузить их заранее, то лучше загружать все сразу после загрузки формы.
