Проблема с аутентификацией в Django - две разные аутентификации, одна для пользовательского администратора, другая для рабочего

Я сталкиваюсь с этой проблемой снова и снова.

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

Ошибка значения в /worker-login/

The following fields do not exist in this model, are m2m fields, or are non-concrete fields: last_login
**models.py
def generate_id():
    alphanumeric = string.ascii_uppercase + string.digits
    return ''.join(random.choices(alphanumeric, k=4))

class Assign(models.Model):
    id = models.CharField(max_length=4, primary_key=True, unique=True, default=generate_id)
    name = models.CharField(max_length=20)
    email = models.EmailField(max_length=30, unique=True)
    dob = models.DateField(null=True, blank=True)
    department = models.ForeignKey('Department', on_delete=models.SET_NULL, null=True, blank=True)
    phone_number = models.CharField(max_length=13, unique=True)
    profile_picture = models.ImageField(upload_to='profile_pictures/', blank=True, null=True)

    USERNAME_FIELD = 'email'
    REQUIRED_FIELDS = ['dob']

    class Meta:
        # Add this to prevent clashes with auth.User's groups and user_permissions
        default_related_name = 'assign_users'

    def save(self, *args, **kwargs):
        if not self.id:
            self.id = generate_id()
        super().save(*args, **kwargs)

    def __str__(self):
        return self.email


**views.py
def worker_login(request):
    if request.method == 'POST':
        email = request.POST.get('email')
        id = request.POST.get('id')
        user = authenticate(request, email=email, id=id)
        if user is not None:
            login(request, user, backend='app1.authentication_backends.AssignBackend')
            return redirect('worker_dashboard')
        else:
            messages.error(request, 'Invalid credentials. Please try again.')
    return render(request, 'worker_login.html')

@login_required
def worker_dashboard(request):
    user = request.user
    try:
        worker = Assign.objects.get(email=user.email)
    except Assign.DoesNotExist:
        worker = None

    context = {
        'worker': worker
    }
    return render(request, 'worker_dashboard.html', context)

**Urls.py
path('worker-login/', views.worker_login, name='worker_login'),
path('worker-dashboard/', views.worker_dashboard, name='worker_dashboard'),
    
Вернуться на верх