Запрос на получение внешнего ключа ПК - PullRequest
0 голосов
/ 04 ноября 2019

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

     class Startup ( models.Model ) :
         author = models.OneToOneField ( User , on_delete = models.CASCADE )
         startup_name = models.CharField ( 'Startup Name' , max_length = 32 , null = False , blank = False )

     @login_required
     def create_startupform(request) :
         q = User.objects.filter(Startup.startup_name.primary_key)
         if q.exists():
             return redirect ( 'str_detailedview' )
         else:
             form = startupform ( request.POST or None )
                 if form.is_valid ( ) :
                 instance = form.save (commit = False)
                 instance.author = request.user
                 instance.save()
                 return redirect ( 'str_detailedview' )
             else:
                 form = startupform()
             return render ( request , 'str_name.html' , { 'form' : form } )

1 Ответ

1 голос
/ 04 ноября 2019

Эта строка не имеет никакого смысла:

q = User.objects.filter(Startup.startup_name.primary_key)

Если вы хотите проверить, существует ли для пользователя объект Startup, вы можете сделать это следующим образом:

q = Startup.objects.filter(author=request.user)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...