-
该属性提供了一种设置上传目录和文件名的方式,可以通过两种方式设置。在这两种情况下,值都会传递给
方法。Storage.save()如果您指定一个字符串值或
,它可能包含Path格式,它将被文件上传的日期/时间替换(这样上传的文件不会填满给定的目录)。例如:strftime()class MyModel(models.Model): # file will be uploaded to MEDIA_ROOT/uploads upload = models.FileField(upload_to='uploads/') # or... # file will be saved to MEDIA_ROOT/uploads/2015/01/30 upload = models.FileField(upload_to='uploads/%Y/%m/%d/')如果您使用默认的
,则字符串值将附加到您的FileSystemStorage路径中,以形成本地文件系统上存储上传文件的位置。如果您使用不同的存储,请查看该存储的文档以了解它如何处理MEDIA_ROOTupload_to。upload_to也可以是可调用的,例如函数。这将被调用以获取上传路径,包括文件名。此可调用对象必须接受两个参数并返回要传递给存储系统的Unix-style 路径(带有正斜杠)。两个参数是:参数 说明 instance定义了
FileField的模型实例。更具体地说,这是附加当前文件的特定实例。在大多数情况下,这个对象还没有保存到数据库中,所以如果它使用默认的
AutoField,it might not yet have a value for its primary key field。filename最初赋予文件的文件名。在确定最终目的地路径时可能会或可能不会考虑这一点。 例如:
def user_directory_path(instance, filename): # file will be uploaded to MEDIA_ROOT/user_<id>/<filename> return 'user_{0}/{1}'.format(instance.user.id, filename) class MyModel(models.Model): upload = models.FileField(upload_to=user_directory_path)
本文介绍 django.db.models.FileField.upload_to 的用法。
声明
FileField.upload_to
相关用法
- Python Django File.save用法及代码示例
- Python File next()用法及代码示例
- Python File tell()用法及代码示例
- Python File seek()用法及代码示例
- Python File writable()用法及代码示例
- Python File close()用法及代码示例
- Python File flush()用法及代码示例
- Python File write()用法及代码示例
- Python File readline()用法及代码示例
- Python File read()用法及代码示例
- Python Django FilePathField.path用法及代码示例
- Python File truncate()用法及代码示例
- Python File fileno()用法及代码示例
- Python File open()用法及代码示例
- Python File isatty()用法及代码示例
- Python File readlines()用法及代码示例
- Python File seekable()用法及代码示例
- Python File readable()用法及代码示例
- Python File writelines()用法及代码示例
- Python OpenCV Filter2D()用法及代码示例
- Python Django FilteredRelation用法及代码示例
- Python Django Field.description用法及代码示例
- Python Django Field.type_name用法及代码示例
- Python Django Field.help_text用法及代码示例
- Python Django Field.width用法及代码示例
注:本文由纯净天空筛选整理自djangoproject.com大神的英文原创作品 django.db.models.FileField.upload_to。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。
