1

我正在尝试创建自己的字段类型来上传图像,它不会在 django 管理面板中使用。我想语法可能看起来像:

photo = CustomImageField(upload_to='images', width="200", height="200")

我希望能够在上传和保存图像时在字段中设置参数。我查看了 django 文档,但找不到任何关于如何执行此操作的信息。所以基本上,我希望能够在处理上传表单并保存对象时控制图像上传到哪里以及宽度和高度参数。

我正在使用 Django 1.2

任何帮助将不胜感激 :)

4

3 回答 3

3

您不需要为此自定义字段。如文档所示,upload_to可以是可调用的,它传递实例并返回确定字段保存位置的路径。

我不确定您对宽度和高度参数的含义。在任何情况下,这些都是从图像中计算出来的。如果在字段定义中指定height_fieldwidth_field,则上传图片时对应的字段将填充图片的高度和宽度的值。

于 2011-01-27T11:35:00.093 回答
2

您可以使用 location 属性更改 FileField 的存储。

form_name.photo.storage.location = upload_dir_path      

它适用于 FileField,如果您继承 Django 的 ImageField,它可能也适用于您的自定义图像字段。

于 2011-01-27T14:04:06.760 回答
0

上传的所有信息:

http://docs.djangoproject.com/en/dev/topics/files/

和有关调整大小的信息

保存时调整图像大小

我希望它会有所帮助

编辑:我认为你需要的只是:http ://code.google.com/p/django-stdimage/ 但我不知道它是否适用于当前版本。

于 2011-01-27T10:34:06.903 回答