• Django之settings.py 的media路径设置


    在一个 models 中使用 FileField 或 ImageField 需要以下步骤:

    1. 在你的 settings.py文件中, 定义一个完整路径给MEDIA_ROOT 以便让 Django在此处保存上传文件.定义MEDIA_URL 作为该目录的公共 URL. 要确保该目录对 WEB 服务器用户帐号是可写的.

    2. 在你的 models.py 中添加 FileField 或 ImageField, 并确保定义了upload_to 选项,以告诉 Django 使用MEDIA_ROOT 的哪个子目录保存上传文件.

    3. 你的数据库中要保存的只是文件的路径(相对于 MEDIA_ROOT). 要想得到这个文件的路径可以用.url方法。在Html模板里通过{{object.photo.url}}得到该图片的路径。

    settings.py 设置

    MEDIA_URL = '/uploads/'
    
    MEDIA_ROOT = os.path.join(BASE_DIR,  'uploads')

    urls.py 映射路径

    url(r"^uploads/(?P<path>.*)$", django.views.static.serve, {"document_root": settings.MEDIA_ROOT, })

    models.py 上传图片字段设置

    avatar = models.ImageField(upload_to='avatar/%Y/%m', default='avatar/default.png', max_length=200, blank=True, null=True, verbose_name='用户头像')
  • 相关阅读:
    使用NSTask调用shell
    《UML和模式应用》读书笔记(一)
    iOS网络编程
    多线程
    Quartz2D
    沙盒中的数据存取
    UIButton设置为圆形按钮并增加边框
    Mac开发快速入门
    JavaWeb学习总结(三)response与request
    JavaWeb学习总结(二) Servlet
  • 原文地址:https://www.cnblogs.com/jasonhaven/p/7515538.html
Copyright © 2020-2023  润新知