Ich bin definitiv ein Neuling für Django, und habe Tutorials und Stack-Überlauf verwendet, um meine App zu entwerfen.Warum ist meine Django-Vorlage als Benutzer auf dasselbe Objekt eingestellt?
Meine App verfolgt Fallarbeit für Benutzer. Eine Sache, die ich tun muss, ist, dass ich als ein Benutzer angemeldet bin und die Caseload für einen anderen Benutzer ansehe.
Wenn diese Seite erscheint, sagt das Bit, das normalerweise "Logout Joe Bloggs" sagen würde, wo Joe Bloggs der angemeldete Benutzer ist, sagt "Logout Fitzwilliam Darcy" wo Fitzwilliam Darcy der Benutzer ist, den ich die Fallarbeit von sehen sollte .
Ich möchte nicht wirklich die App weiter entwickeln, bis ich es behoben habe, für den Fall, dass dies ein Symptom für ein zugrunde liegendes Problem ist, das in Zukunft weitere Probleme verursachen wird.
Ich füge hinzu, was ich denke, alle relevanten Bits sind hier, aber wenn es noch etwas braucht, lass es mich wissen, und ich werde mich freuen, zu bearbeiten.
#urls.py
url(r'cases/(?P<slug>\w+)',views.UserCasesView.as_view(),name='cases'),
#views.py
@method_decorator(login_required,name='dispatch')
class UserCasesView(generic.DetailView):
model = models.User
template_name = 'caseworkclub/caseworker_detail.html'
slug_field = 'username'
#models.py
class User(AbstractUser):
association = models.ForeignKey('Association',null=True)
def full_name(self):
return("{} {}".format(self.first_name,self.last_name)
def open_cases(self):
return(Case.objects.filter(closed__isnull=True,caseworker=self))
Die Schnecke Bit ist so, dass der Benutzername in der URL kann nach this answer to another question
Es könnte auch wert sein, zu erklären, wenn die models.py
Bit nicht weg nicht geben, dass ich verlängert habe die Basisbenutzerklasse und verwende diese, anstatt die Benutzerprofiltechnik. Das Problem scheint jedoch entstanden zu sein, seit das Slug-Bit oben geändert wurde.
Jede Hilfe sehr geschätzt, und wie gesagt - keine weiteren Infos, gerne zur Verfügung stellen!
James
Was passiert, wenn Sie 'request.user' im Abmelde Abschnitt' user' ändern? – Lucas
Können Sie Ihre Vorlagen anzeigen? – GwynBleidD