如何让django通过灯具上传图像文件

时间:2016-03-23 16:34:01

标签: python json django django-fixtures

我的models.py中有一个班级:

class Car(models.Model):
    id = models.UUIDField(primary_key=True, default=uuid.uuid4)
    create_date = models.DateTimeField('date added', auto_now_add=True)
    modify_date = models.DateTimeField('date modified', default=timezone.now)
    name = models.CharField(max_length=200)
    image_file = models.ImageField(
        upload_to=upload_to_company, null=True, blank=True)

JSON这样的灯具:

   [
      {
        "model": "polls.car",
        "fields": {
            "id":"09734145-7a15-4c84-8b7c-eaab4112cbaa",
            "name": "VW",
            "create_date": "2015-01-01T00:00:00+00:00"
        }
      }
    ]

我作为夹具加载。现在我想让它加载一个图像,但是当我插入"image_file":"VW.jpg"时(VW.jpg与JSON在同一个文件夹中)。 VW.jpg显示在管理员的panle中,但它不会上传实际图片。

任何想法或提示在哪里寻找?

1 个答案:

答案 0 :(得分:1)

不知道为什么我没有提前得出这个结论,但是如果您只是将具有在fixtures文件中指定的名称的文件放在您想要的目录中,它就会起作用。例如:

 [
      {
        "model": "polls.car",
        "fields": {
            "id":"09734145-7a15-4c84-8b7c-eaab4112cbaa",
            "name": "VW",
            "create_date": "2015-01-01T00:00:00+00:00",
            "image_file":"VW.jpg"
        }
      }
    ]

然后将VW.jpg放在media目录所在的位置,例如:

media/VW.jpg

它不会以这种方式上传,但它位于数据库中,可通过管理员面板访问