Как мне реализовать систему, в которой конкретный пользователь записывается на конкретное мероприятие (Django)?

Я хочу создать приложение для регистрации на мероприятия, но столкнулся с проблемой. Я создал систему, в которой пользователь добавляется к событию, когда он запускает просмотр, но при этом пользователь подписывается на все события, а не только на одно. Как мне сделать так, чтобы пользователь подписывался на то мероприятие, которое он выбирает?

models.py:

from django.db import models
from django.contrib.auth.models import User

class UserA(models.Model):
    user = models.ForeignKey(User, null=True, on_delete=models.SET_NULL)

    def __str__(self):
        return self.user.username

class systemTitle(models.Model):
    title = models.CharField('Title', max_length=300)
    time = models.DateTimeField('Time')
    place = models.CharField('Place', max_length=500)
    description = models.TextField('Description')
    people = models.IntegerField('Free Spaces', default=50)
    users = models.ManyToManyField(UserA, blank="True")

    class Meta:
        verbose_name = 'Event'
        verbose_name_plural = 'Events'

    def __str__(self):
        return self.title
        return self.place

views.py:

from django.shortcuts import render
from .models import systemTitle
from django.contrib.auth.decorators import login_required
from django.contrib.auth.models import User
from email.message import EmailMessage
import smtplib

@login_required
def index(request):
    latest_activities = systemTitle.objects.order_by('-time')[:5]
    context = {'latest_activities': latest_activities}
    return render(request, 'systema/index.html', context)

def details(request, systemTitle_id):
    try:
        systemT = systemTitle.objects.get(pk=systemTitle_id)
    except systemTitle.DoesNotExist:
        print('error')
    return render(request, 'systema/details.html', { 'systemT' : systemT })

def success(request, systemTitle_id):
    user = request.user
    user_email = user.email
    systemT = systemTitle.objects.get(id=systemTitle_id)
    systemT.people -= 1
    systemT.users.create(user=user)
    systemT.save()
    return render(request, 'systema/success.html', { 'systemT' : systemT })

Заранее спасибо :D

Вернуться на верх