zoukankan      html  css  js  c++  java
  • django-admin上传下载文件

    djangoadmin默认上传文件无法浏览,可以按以下方法解决

    class TestData(models.Model):
        name = models.CharField(max_length=200)
        data = models.FileField(upload_to='appname/', null=True, blank=True)
        img = models.ImageField(upload_to='appname/', null=True, blank=True)
    
        def __str__(self):
            return self.name

    创建文件表,加入admin.py

    @admin.register(models.TestData)
    class TestDataAdmin(admin.ModelAdmin):
        pass

    后台上传文件,后浏览无文件。

    解决方法:

    1.settings加入

    MEDIA_URL = 'data/'
    MEDIA_ROOT = 'data/'

    MEDIA_ROOT = 'data/'

    于是上传文件的路径就是MEDIA_ROOT = 'data/'与upload_to='appname/'连起来data/appname/

    上传a.txt,目录为data/appname/a.txt。

    MEDIA_URL = 'data/'

    表示任何上传文件链接前缀为 'data/'与upload_to='appname/'连起来data/appname/

    打开后链接对了,django无法识别路径。

    2.urls.py加入re_path(r"data/(?P<path>.*)$", serve, {"document_root": settings.MEDIA_ROOT})

    from . import settings
    from django.contrib import admin
    from django.urls import path, include, re_path
    from django.views.static import serve
    
    urlpatterns = [
        path('appname/',include('appname.urls')),
        path('admin/', admin.site.urls),
        re_path(r"data/(?P<path>.*)$", serve, {"document_root": settings.MEDIA_ROOT}),
    ]

    这样djangoadmin就能正确识别文件路径,上传下载文件了

    下一篇介绍自定义页面上传下载文件

  • 相关阅读:
    合成反应
    poj 2229 Sumsets(dp)
    poj 2229 Sumsets(dp)
    Redis 笔记与总结3 list 类型
    大数据时代 企业要跟得上潮流
    大数据时代 企业要跟得上潮流
    企业用好大数据只需这6招
    企业用好大数据只需这6招
    企业大数据运用实战案例分享
    企业大数据运用实战案例分享
  • 原文地址:https://www.cnblogs.com/zerotest/p/14387266.html
Copyright © 2011-2022 走看看