I have teams and I have members (players). The Team owner is inviting a player to his team by email. And player is accepting invitation to join team. After acceptation they become a member of a invitated team.
Now what I want to do is to make it possible for player to leave the team and also give possibility for the team owner remove player from their team. Since I am new with Django I can't achieve it yet. I've tried to create delete_member.html and function delete_member in Views first for Team owner to remove Its member but I don't see anything in that page. What Am I doing wrong?
Apps:
Team app - Views
from django.conf import settings
from django.contrib import messages
from django.contrib.auth.decorators import login_required
from django.shortcuts import render, redirect, get_object_or_404    
from .models import Team, Invitation  
 
from .utilities import send_invitation, send_invitation_accepted    
@login_required
def team(request, team_id):
    team = get_object_or_404(Team, pk=team_id, status=Team.ACTIVE, members__in=[request.user])
    invitations = team.invitations.filter(status=Invitation.INVITED)   
    return render(request, 'team/team.html', {'team': team, 'invitations': invitations})
@login_required
def activate_team(request, team_id):
    team = get_object_or_404(Team, pk=team_id, status=Team.ACTIVE, members__in=[request.user])
    userprofile = request.user.userprofile
    userprofile.active_team_id = team.id
    userprofile.save()
    messages.info(request, 'The team was activated')
    return redirect('team:team', team_id=team.id)
@login_required
def add(request):
    if request.method == 'POST':
        title = request.POST.get('title')
        if title:
            team = Team.objects.create(title=title, created_by=request.user)
            team.members.add(request.user)
            team.save()
            userprofile = request.user.userprofile
            userprofile.active_team_id = team.id
            userprofile.save()
            return redirect('myaccount')
    
    return render(request, 'team/add.html')
@login_required
def delete_member(request):
team = get_object_or_404(Team, pk=request.user.userprofile.active_team_id, status=Team.ACTIVE, members__in=[request.user])
if request.method == 'POST':
    members = request.POST.get('members')
    if members:
        team.members = members
        team.delete()
        messages.info(request, 'The changes was saved')
        return redirect('team:team', team_id=team.id)            
return render(request, 'team/delete_member.html')
@login_required
def edit(request):
    team = get_object_or_404(Team, pk=request.user.userprofile.active_team_id, status=Team.ACTIVE, members__in=[request.user])
    if request.method == 'POST':
        title = request.POST.get('title')
        if title:
            team.title = title
            team.save()
            messages.info(request, 'The changes was saved')
            return redirect('team:team', team_id=team.id)
    return render(request, 'team/edit.html', {'team': team})
@login_required
def invite(request):
    team = get_object_or_404(Team, pk=request.user.userprofile.active_team_id, status=Team.ACTIVE)
    if request.method == 'POST':
        email = request.POST.get('email')
        if email:
            invitations = Invitation.objects.filter(team=team, email=email)
            if not invitations:
                code = ''.join(random.choice('abcdefghijklmnopqrstuvwxyz123456789') for i in range(4))
                invitation = Invitation.objects.create(team=team, email=email, code=code)
                messages.info(request, 'The user was invited')
                send_invitation(email, code, team)
                return redirect('team:team', team_id=team.id)
            else:
                messages.info(request, 'The users has already been invited')
    return render(request, 'team/invite.html', {'team': team})
Team App - Models
from django.contrib.auth.models import User
from django.db import models
    class Team(models.Model):
    
        ACTIVE = 'active'
        DELETED = 'deleted'
    
        CHOICES_STATUS = (
            (ACTIVE, 'Active'),
            (DELETED, 'Deleted')
        )
    
    
        title = models.CharField(max_length=255)
        members = models.ManyToManyField(User, related_name='teams')
        created_by = models.ForeignKey(User, related_name='created_teams', on_delete=models.CASCADE)
        created_at = models.DateTimeField(auto_now_add=True)
        status = models.CharField(max_length=10, choices=CHOICES_STATUS, default=ACTIVE)    
    
        class Meta:
            ordering = ['title']
        
        def __str__(self):
            return self.title
    
    class Invitation(models.Model):
    
        INVITED = 'invited'
        ACCEPTED = 'accepted'
        REJECTED = 'rejected'
    
        CHOICES_STATUS = (
            (INVITED, 'Invited'),
            (ACCEPTED, 'Accepted'),
            (REJECTED, 'Rejected')
        )
    
        team = models.ForeignKey(Team, related_name='invitations', on_delete=models.CASCADE)
        email = models.EmailField()
        code = models.CharField(max_length=20)
        status = models.CharField(max_length=20, choices=CHOICES_STATUS, default=INVITED)
        date_sent = models.DateTimeField(auto_now_add=True)
    
        def __str__(self):
            return self.email
Team App - Urls
from django.urls import path
from .views import team, add, edit, activate_team, invite, delete_member
app_name = 'team'
urlpatterns = [
    path('add/', add, name='add'),
    path('edit/', edit, name='edit'),
    path('delete_member/', delete_member, name='delete_member'),
    path('invite/', invite, name='invite'),
    path('activate_team/<int:team_id>/', activate_team, name='activate_team'),
    path('<int:team_id>/', team, name='team')
]
Team App - Templates/delete_member.html
{% extends 'core/base.html' %}
{% block title %}Delete member | {% endblock %}
{% block content %}
    <nav class="breadcrumb" aria-label="breadcrumbs">
        <ul>
            <li><a href="#">Dashboard</a></li>
            <li><a href="{% url 'myaccount' %}">My account</a></li>
            <li class="is-active"><a href="{% url 'team:add' %}" aria-current="page">Add team</a></li>
        </ul>
    </nav>
    <div class="columns" id="team-app">
        <div class="column is-4">
            <h1 class="title">Delete member</h1>
            <form method="post" action="." @submit="validateForm">
                {% csrf_token %}
                
                <div class="field">
                    <label>Member</label>
                    {% for member in team.members.all %}
                    <p>{{ member.username }}</p>
                    <div class="field">
                        <div class="control">
                            <button class="button is-success">Delete</button>
                        </div>
                    </div>
                    {% endfor %}
                </div>
                <div class="notification is-danger" v-if="errors.length">
                    <p v-for="error in errors">[[ error ]]</p>
                </div>
                
            </form>
        </div>
    </div>