【问题标题】:django-jquery-file-upload with model OneToOneField带有模型 OneToOneField 的 django-jquery-file-upload
【发布时间】:2013-12-01 04:49:05
【问题描述】:

我正在尝试使用https://github.com/sigurdga/django-jquery-file-upload 作为蓝图构建一个小型 django 图片网站:

我的模型如下:

class Picture(models.Model):

    test = models.SlugField(max_length=50, blank=True)
    slug = models.SlugField(max_length=50, blank=True)
    user = models.OneToOneField(User)
    file = models.ImageField(upload_to="pictures")

def save(self, *args, **kwargs):
    self.slug = self.file.name

    super(Picture, self).save(*args, **kwargs)

class PictureCreateView(CreateView):
    model = Picture
    def form_valid(self, form):
        obj = form.save(commit=False)
        obj.test = self.request.user
        obj.user = self.request.user
        obj.save()
        self.object = obj
        files = [serialize(self.object)]
        data = {'files': files}
        response = JSONResponse(data, mimetype=response_mimetype(self.request))
        response['Content-Disposition'] = 'inline; filename=files.json'
        return response

我有一个 ajax 按钮,可以像 django-jquery-file-upload 一样发布图片,但它总是会出现“JSON.parse:意外字符”的错误

奇怪的是,如果我评论 ount:

Model
#user = models.OneToOneField(User)
View
#obj.user = self.request.user

该网站将正常运行。

有人能解释一下发生了什么吗?

杰克

【问题讨论】:

    标签: jquery ajax django file-upload


    【解决方案1】:

    我相信错误发生在以下两行:

        files = [serialize(self.object)]
    
        response = JSONResponse(data, mimetype=response_mimetype(self.request))
    

    你应该在你的控制台中测试这个函数:[serialize(self.object)]

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-05-28
      • 2013-08-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-08-26
      • 2014-06-26
      相关资源
      最近更新 更多