Django获取未创建对象的ForeignKey

我有Post和UploadFile模型:

class Post(models.Model): 
    title = models.CharField(max_length=150)
    content = models.TextField()
    author = models.ForeignKey(settings.AUTH_USER_MODEL,default=1,on_delete=models.CASCADE,related_name="post_author")
    objects = PostManager()

UploadFile对象通过ForeignKey链接到Post

class UploadFile(models.Model):
    file = models.FileField(null=True,blank=True,upload_to='files/',)
    post = models.ForeignKey(Post,null=True,related_name="file_post")

我正在管理页面上的编辑器中创建帖子。为此,我使用RichTexteditor Tinymce。事实是,当我在编辑器中创建帖子时,UploadFile对象(文件)会立即通过Ajax请求上传到服务器,并希望引用该帖子对象。但是自从我编辑后,尚未创建post对象。 如何解决这个问题呢?未分配ForeignKey时(null = True)。创建Post对象之后,可能是重写save方法或使用post_save信号,还是更新Uploadfile.post的ForeignKey值?但是我还不知道如何实现。 这是views.py中的文件上传处理程序功能。

@require_POST
def file_upload(request):
    reqfile = UploadFile.objects.create(file=request.FILES['file'])
    return JsonResponse({'fileurl': reqfile.file.url})
lixuebo7456 回答:Django获取未创建对象的ForeignKey

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/3160736.html

大家都在问