У меня есть одно непонятное для меня задание.Мне нужно найти один объект, который существует у двух пользователей.Например.У каждого пользователя есть AdditionalInfo
, также у меня есть таблица AddInfoTeam
, где у меня есть отношение ManyToMany:
class AddInfoTeam(models.Model):
add_info = models.ForeignKey(AdditionalInfo,
on_delete=models.CASCADE)
team = models.ForeignKey(Team,
on_delete=models.CASCADE)
Каждый пользователь может существовать во многих командах.
Например, у меня есть 2 пользователя - user1 и user2.Мне нужно выяснить, с какой командой они вместе.
Это мой пример кода:
# get additional info for user1
add_info_dealer = AdditionalInfo.objects.get(user=dealer)
# get additional info for user2
add_info_grower = AdditionalInfo.objects.get(user=grower)
# get all teams for user 1
dealer_teams = AddInfoTeam.objects.filter(add_info=add_info_dealer)
# # get all teams for user 2
grower_teams = AddInfoTeam.objects.filter(add_info=add_info_grower)
# this is bad code, i try to find someting better than this:
for dealer_team in dealer_teams:
for grower_team in grower_teams:
if grower_team.id == dealer_team.id:
return grower_team