Модель пользователя Django со связями ManyToMany, как обновить / создать новый профиль со связями? - PullRequest
0 голосов
/ 28 февраля 2019

У меня есть класс, который имеет отношение один к одному с моим классом User.В этом классе (называемом UserLocations) у меня есть поле ManyToManyField для другого класса (мы будем называть эту модель Locations).

В моем классе Locations у меня есть поле с именем 'abbreviation', которое являетсячетырехбуквенное сокращение названия места.У меня есть интерфейсный веб-сайт, на котором администратор может создать нового пользователя или обновить существующие местоположения пользователей (на основе поля аббревиатуры).

Когда я собираюсь создать нового пользователя, как мне установить / обновить это поле ManyToMany на основе поля 'abbreviation'?Это список сокращений, связанных с этим полем «сокращение» в модели Locations.

1 Ответ

0 голосов
/ 01 марта 2019
# Assuming you get the chosen abbreviation in a variable called location_abbreviation:    
desired_location = Location.objects.get(abbreviation=location_abbreviation)
user = User.objects.create(...)
user_location = UserLocation.objects.create(user=user, ...)
user_location.locations = [desired_location]
user_location.save()

Дайте мне знать, если я неправильно понял ваш вопрос.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...