您的位置:首页 > 编程语言 > Go语言

django图片上传路径及访问路径问题

2020-03-06 20:53 886 查看

使用ImageField作为图片上传字段:

class User(models.Model):

gender = (
('male', '男'),
('female', '女'),
)

name = models.CharField(max_length=128, unique=True, verbose_name='用户名')
password = models.CharField(max_length=256, verbose_name='密码')
email = models.EmailField(unique=True, verbose_name='邮箱')
sex = models.CharField(max_length=32, choices=gender, default='男', verbose_name='性别')
c_time = models.DateTimeField(auto_now_add=True, verbose_name='注册时间')
user_img = models.ImageField(upload_to='user_img/', verbose_name='头像')  #用户头像

def __str__(self):
return self.name

class Meta:
ordering = ["-c_time"]
verbose_name = "用户"
verbose_name_plural = "用户"

在setting.py设置上传图片文件夹:

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

通过数据库迁移migrate能在后台正常展示头像字段:

在admin操作上传也能在指定文件夹上传正常的图片,查看图片的url也感觉正常,不能正常访问图片:

这问题到底出在哪里?

显然是url映射有问题了,在django2.0+中,在你的urlpatterns后面增加:

urlpatterns = patterns('',****
) + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
# 当然,在urls.py中,不要忘记增加:
from django.conf import settings
from django.conf.urls.static import static

问题解决~

  • 点赞
  • 收藏
  • 分享
  • 文章举报
lingshi75 发布了3 篇原创文章 · 获赞 2 · 访问量 243 私信 关注
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: