Я просто немного потерял себя, и я застрял на этом.
У меня есть модель, в которой есть поле группы:
class CalendarGroups(models.Model):
GRP_CALS = (
('Grp1', 'Grp1'),
('Grp2', 'Grp2'),
('Test', 'Test'),
)
name = models.CharField(max_length=155, choices=GRP_CALS, blank=True, null=True)
def __str__(self):
return self.name
class Meta:
...
class CalendarMaster(models.Model):
created_by = models.ForeignKey(User, on_delete=models.CASCADE, null=True, blank=True)
date_created = models.DateTimeField(auto_now_add=True)
group = models.ForeignKey(CalendarGroups, on_delete=models.CASCADE)
date_valid = models.DateTimeField(null=True, blank=True)
Я просто хочу проверить, соответствует ли группа пользователя группе календаря - будет отображен некоторый контекст.
Мои взгляды:
@login_required(login_url='registration/login')
def add_event(request, pk):
opp = get_object_or_404(OpportunityList, pk=pk)
opp_locked = get_object_or_404(Locked, pk=pk)
user = User.objects.get(username=request.user.username)
...
user_groups = request.user.groups.values_list('name', flat=True)
events_all = Events.objects.all()
calendars = Calendar.objects.all()
form = ...
if request.method == 'POST':
form = ...(request.POST or None)
if form.is_valid():
event_form = form.save(commit=False)
event = Events.objects.create(
event_name=opp_locked.type + '/' + str(opp.oppc_place) + '/' + opp.oppc_client_name,
event_comment=form.cleaned_data['event_comment'],
...
)
...
event.save()
messages.success(request, '...' + ...)
return redirect('...')
context = {
'form': form,
'opp': opp,
'events': events_all,
"calendars": calendars,
"today": datetime.now().date(),
"user": user,
"user_groups": user_groups,
}
return render(request, '...', context)
Мне нужно что-то вроде:
{% if user_group == calendar_group %}
Но каким-то образом я не могу с этим справиться -.-
PS. Группы пользователей такие же, как у CalendarMaster