外键指向用户模型时无法插入django模型

vecaoik1  于 2021-07-13  发布在  Java
关注(0)|答案(1)|浏览(358)

我对django很陌生,我正在一个工作门户网站上工作。我的用户是招聘人员和学生。当招聘人员发布一份工作时,我可以从表单中检索所有值,但无法插入到我的实习模型中。你们能帮忙吗?
这是我的密码:
型号.py

  1. class Recruiter(models.Model):
  2. STATUS_CHOICES = (
  3. ('Pending', 'Pending'),
  4. ('Accepted', 'Accepted'),
  5. )
  6. user = models.ForeignKey(User,on_delete=models.CASCADE)
  7. position = models.CharField(max_length=50)
  8. status = models.CharField(max_length=20, choices=STATUS_CHOICES)
  9. user_type = models.CharField(max_length=10, choices=USER_TYPE_CHOICES)
  10. def __str__(self):
  11. return self.user.username
  12. class Internship(models.Model):
  13. recruiter = models.ForeignKey(Recruiter, on_delete=models.SET_NULL, null=True)
  14. internship_title = models.CharField(max_length=100)
  15. internship_desc = RichTextField()
  16. start_date = models.DateField()
  17. end_date = models.DateField()
  18. posted_date = models.DateField()
  19. def __str__(self):
  20. return self.internship_title

视图.py

  1. def post_internship(request):
  2. if not request.user.is_authenticated:
  3. messages.warning(request,"Please login first")
  4. return redirect('login')
  5. if request.method == 'POST':
  6. start_date = request.POST['start_date']
  7. end_date = request.POST['end_date']
  8. internship_title = request.POST['internship_title']
  9. internship_desc = request.POST['internship_desc']
  10. user = request.user
  11. recruiter = Recruiter.objects.get(user=user)
  12. try:
  13. Internship.objects.create(recruiter=recruiter, internship_title=internship_title,
  14. internship_desc=internship_desc, start_date=start_date, end_date=end_date,
  15. posted_date=date.today())
  16. except:
  17. print('error')
  18. return render(request, 'post_internship.html', context)
c2e8gylq

c2e8gylq1#

我想我不明白你的实习模式中richtext字段的意义。

  1. internship_desc = RichTextField()

我可能会用

  1. models.TextField

相关问题