I have the following models:
class User(models.Model):
      user_question = models.ForeignKey(UserQuestion)
class Question(models.Model):
      text = models.CharField(max_length=255)
class UserQuestion(models.Model):
      answer = models.CharField(max_length=255)
      question = models.ForeignKey(Question)
      user = models.ForeignKey(User, related_name='questions')
When I run the query below the user model is also deleted
user.questions.all().delete()
Is there any way to delete the questions without deleting the user?
I tried iterating over the questions and that didn't work
questions = user.questions.all()
for an in questions:
     answer.delete()
I thought the queryset was lazy so maybe I needed to evaluate it before deleting so I printed it and this did not work.
print questions
questions.delete()
I know that making the ForeignKey nullable would provide me with methods like clear and remove but I did not want to do this because I did not want any orphaned user questions.
I updated the ForeignKey as follows
class UserQuestion(models.Model):
  answer = models.CharField(max_length=255)
  user = models.ForeignKey(User, related_name='questions', null=True, on_delete=models.SET_NULL)
I ran makemigrations and migrate but when I ran the query below The question model was still deleted.
user.questions.all().delete()
 
     
    