Как я могу использовать slugs в Django url, например mysite.com/user

Я хочу создать каталог типа website.com/user после того, как пользователь вошел в систему!

И я не уверен, какой url pattern должен вызывать этот myfun для захвата slug: user в url

def myfun(request, user):
    user = get_user_model().objects.get(slug=user)
    return render(request, 'authorization/home.html', {'user' : user})

models.py

class TwitterUser(models.Model):
    screen_name = models.CharField(max_length=255)
    name = models.CharField(max_length=255)
    user = models.SlugField('auth.User', unique=True, null=True)

app/urls.py

urlpatterns = [
    path('', views.index, name='index'),
    path('twitter_login/', views.twitter_login, name='twitter_login'),
    path('twitter_callback/', views.twitter_callback, name='twitter_callback'),
    path('twitter_logout/', views.twitter_logout, name='twitter_logout'),
]

view.py

Ваш ответ будет высоко оценен :)

Добавьте его в ваш urls.py с соответствующим placeholder и получите placeholder в качестве параметра в представлении:

urlpatterns = [
    path('', views.index, name='index'),
    path('<str:user>', views.myfun, name='myfun')
]

Вы можете посмотреть больше информации здесь в документации Django https://docs.djangoproject.com/en/4.1/topics/http/urls/

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