Django settings.py 的media路径设置
2012-05-24 09:16
597 查看
在一个
models 中使用 FileField 或 ImageField 需要以下步骤:
1. 在你的 settings 文件中, 定义一个完整路径给MEDIA_ROOT 以便让 Django在此处保存上传文件.
(出于性能考虑,这些文件并不保存到数据库.) 定义MEDIA_URL 作为该目录的公共
URL. 要确保该目录对 WEB 服务器用户帐号是可写的.
2. 在你的 models.py 中添加 FileField 或 ImageField,
并确保定义了upload_to 选项,以告诉
Django 使用MEDIA_ROOT 的哪个子目录保存上传文件.
3. 你的数据库中要保存的只是文件的路径(相对于 MEDIA_ROOT).
要想得到这个文件的路径可以用.url方法。例如,如果models里有一个取名为"photo"的ImageField,可以在Html模板里通过{{object.photo.url}}得到该图片的路径。
settings.py
设置
媒体文件的绝对路径:
#
Absolute path to the directory that holds media.
# Example: "/home/media/media.lawrence.com/"
MEDIA_ROOT
= 'D:\Python26\Lib\site-packages\django\bin\newproj\media'
媒体文件的相对路径:
# URL that handles the media served from MEDIA_ROOT.
# Example: "http://media.lawrence.com"
MEDIA_URL
= '/site_media/'
设置静态文件路径
STATIC_PATH
= 'D:/Python26/Lib/site-packages/django/bin/newproj/media'
urls.py
影射路径
(r'^site_media/(?P<path>.*)$',
'django.views.static.serve',{'document_root': settings. STATIC_PATH }),
将 MEDIA_URL 的site_media 影射到 settings.STATIC_PATH
models.py
上传图片字段设置
photo
= models.ImageField('上传图片',upload_to='photos')
相当于传到 D:/Python26/Lib/site-packages/django/bin/newproj/media/photos 目录下,浏览时通过/site_media/photos/ 访问。
models 中使用 FileField 或 ImageField 需要以下步骤:
1. 在你的 settings 文件中, 定义一个完整路径给MEDIA_ROOT 以便让 Django在此处保存上传文件.
(出于性能考虑,这些文件并不保存到数据库.) 定义MEDIA_URL 作为该目录的公共
URL. 要确保该目录对 WEB 服务器用户帐号是可写的.
2. 在你的 models.py 中添加 FileField 或 ImageField,
并确保定义了upload_to 选项,以告诉
Django 使用MEDIA_ROOT 的哪个子目录保存上传文件.
3. 你的数据库中要保存的只是文件的路径(相对于 MEDIA_ROOT).
要想得到这个文件的路径可以用.url方法。例如,如果models里有一个取名为"photo"的ImageField,可以在Html模板里通过{{object.photo.url}}得到该图片的路径。
settings.py
设置
媒体文件的绝对路径:
#
Absolute path to the directory that holds media.
# Example: "/home/media/media.lawrence.com/"
MEDIA_ROOT
= 'D:\Python26\Lib\site-packages\django\bin\newproj\media'
媒体文件的相对路径:
# URL that handles the media served from MEDIA_ROOT.
# Example: "http://media.lawrence.com"
MEDIA_URL
= '/site_media/'
设置静态文件路径
STATIC_PATH
= 'D:/Python26/Lib/site-packages/django/bin/newproj/media'
urls.py
影射路径
(r'^site_media/(?P<path>.*)$',
'django.views.static.serve',{'document_root': settings. STATIC_PATH }),
将 MEDIA_URL 的site_media 影射到 settings.STATIC_PATH
models.py
上传图片字段设置
photo
= models.ImageField('上传图片',upload_to='photos')
相当于传到 D:/Python26/Lib/site-packages/django/bin/newproj/media/photos 目录下,浏览时通过/site_media/photos/ 访问。
相关文章推荐
- Django settings.py 的media路径设置
- Django之settings.py 的media路径设置
- Django settings.py 的media路径设置
- Django settings.py 的media路径设置
- 全面解析Django的模板路径设置templates(settings.py)
- Django ====> 1.4版本静态文件路径设置--MEDIA_ROOT,MEDIA_URL, STATIC_ROOT, STATIC_URL学习
- django的settings.py设置session
- Django 1.6 最佳实践: 如何设置django项目的设置(settings.py)和部署文件(requirements.txt)
- django的settings.py设置static
- 基于 Django1.10 文档的深入学习(1)—— Settings.py 之 MEDIA_ROOT 与 MEDIA_URL
- Django 1.6 最佳实践: 如何设置django项目的设置(settings.py)和部署文件(requirements.txt)
- 在Django下创建项目以及设置settings.py
- 如何设置django项目的设置(settings.py)和部署文件(requirements.txt)
- Django ====> 1.4版本静态文件路径设置--MEDIA_ROOT,MEDIA_URL, STATIC_ROOT, STATIC_URL学习
- Django settings.py 中设置访问 MySQL 数据库【一种是直接在 settings.py 文件中直接写数据库信息,另一种是读文件获取数据库信息】
- django中settings.py设置
- DjangoUeditor 设置上传路径 2015-9-30
- Django纪实:模板路径的设置
- django settings.py源码
- Django 博客系统----settings设置和表关系结构