Почему мой Django URL не связан с идентификатором пользователя?

Когда я ввожу следующий URL: 'http://127.0.0.1:8000/mainpage/13/updateportfolio/', отрисованный шаблон показывает "Welcome username#13" в правом верхнем углу, что соответствует id #13 в моей базе данных PostgreSQL.

'13' в url

Однако, если я ввожу URL 'http://127.0.0.1:8000/mainpage/100/updateportfolio/, отрисованный шаблон по-прежнему показывает то же имя пользователя в правом верхнем углу, он должен перенаправить пользователя на страницу входа. Как мне произвести эту аутентификацию или у меня неправильное представление об URL вообще?

'100' на url

urls.py

app_name = 'mainpage'
urlpatterns = [
    path('<int:pk>/updateportfolio/', mainview.UpdatePortfolioView.as_view(), name='update'),
    path('<int:pk>/transactions/'), mainview.TransactionsView.as_view(), name='transactions'),
]

views.py

class UpdatePortfolioView(LoginRequiredMixin, FormView):
form_class = UpdatePortfolio
template_name = 'mainpage/updateportfolio.html'

def get_context_data(self, **kwargs):
    context = super().get_context_data(**kwargs)
    current_user = get_object_or_404(User, pk=self.request.user.pk)
    tickers = TickerSymbols.objects.all()
    context['username'] = current_user.username
    context['form'] = self.form_class
    context['tickers'] = tickers
    return context

def get_object(self):
    return self.request.user.pk

def form_valid(self, form):
    user_holding = get_object_or_404(Transaction, pk=self.request.user.pk)
    symbol = form.cleaned_data['symbol'].upper()
    share_number = form.cleaned_data['share']
    user_holding.symbol = symbol
    # Save form inputs to database
    messages.success(
        self.request, 
        f"{share_number} shares of {symbol} has been updated to your portfolio")

    # Save form
    super(UpdatePortfolioView, self).form_valid(form)
    if 'submit' in self.request.POST:
        return redirect(reverse('mainpage:transactions', kwargs={'pk': self.request.user.pk}))
    elif 'submit_another' in self.request.POST:
        return render(self.request, self.template_name, {'form': form})
Вернуться на верх