簡體   English   中英

無法使用指向用戶 model 的外鍵插入 django model

[英]Unable to insert into django model with foreign key pointing to user model

我對 django 很陌生,我正在開發一個工作門戶網站。 我的用戶是招聘人員和學生。 當招聘人員發布工作時,我可以從表格中檢索所有值,但無法插入我的實習 Model。 請問各位能幫忙嗎?

這是我的代碼:

模型.py

class Recruiter(models.Model):

     STATUS_CHOICES = (
     ('Pending', 'Pending'),
     ('Accepted', 'Accepted'),
)
     user = models.ForeignKey(User,on_delete=models.CASCADE)
     position = models.CharField(max_length=50)
     status = models.CharField(max_length=20, choices=STATUS_CHOICES)
     user_type = models.CharField(max_length=10, choices=USER_TYPE_CHOICES)

     def __str__(self):
          return self.user.username     

 

class Internship(models.Model):
 recruiter = models.ForeignKey(Recruiter, on_delete=models.SET_NULL, null=True)
 internship_title = models.CharField(max_length=100)
 internship_desc = RichTextField()
 start_date = models.DateField()
 end_date = models.DateField()
 posted_date = models.DateField()

 def __str__(self):
      return self.internship_title

視圖.py

def post_internship(request):
    if not request.user.is_authenticated:
        messages.warning(request,"Please login first")
        return redirect('login')

    if request.method == 'POST':
        start_date = request.POST['start_date']
        end_date = request.POST['end_date']
        internship_title = request.POST['internship_title']
        internship_desc = request.POST['internship_desc']
    
        user = request.user
        recruiter = Recruiter.objects.get(user=user)
        try:
            Internship.objects.create(recruiter=recruiter, internship_title=internship_title, 
     internship_desc=internship_desc, start_date=start_date, end_date=end_date,  
     posted_date=date.today())
        except:
            print('error')

       return render(request, 'post_internship.html', context)

我認為我不理解您的實習 model 中富文本字段的意義。

internship_desc = RichTextField()

我可能會使用

 models.TextField

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM