Well I am facing error and it\'s now its been two days to this question and still stuck on this mistake, anybody can help and able to fix this. I am new in Django and need help.
str type used instead of slug type in urls.pyUserProfileDetailView doesn't specify your custom slug_url_kwarg and slug_fieldUserProfileDetailView specifies UserProfile model but UserProfile model doesn't have attribute or method username, which is on `User table.Reading Django's DetailView code, you'll find that the following is necessary to get your code working properly.
views.py
class UserProfileDetailView(DetailView):
slug_url_kwarg = "username"
slug_field = "username"
UserProfile is the lookup table defined for UserProfileDetailView and get_slug_fieldmethod, which readsslug_fieldproperty on the UserProfileDetailView doesn't support dot syntax method traversal (ie:user.username`).
Thus either:
username or;get_slug_field must explicitly define slug field or;get_slug_field must add functionality for dot syntax method traversalmodels.py
class UserProfile(models.model):
...
@property
def username(self):
self.user.username
OR
class UserProfileDetailView(DetailView):
...
def get_slug_field(self):
self.user.username
Helpful, but not necessary.
urls.py
path('/', UserProfileDetailView.as_view(), name = 'detail'),
Django Detail View get_slug_field (Github): https://github.com/django/django/blob/master/django/views/generic/detail.py#L78-L80