zoukankan      html  css  js  c++  java
  • Django 静态文件配置

    static

    Django中,静态资源的存放通过设置STATIC_URL, STATICFILES_DIRS来设置

    一般STATIC_URL设置为:STATIC_URL=’/static/’,这个static是在Django具体APP下建立的static目录,用来存放静态资源。
    而STATICFILES_DIRS一般用来设置通用的静态资源,对应的目录不放在APP下,而是放在Project下

    具体在模板文件中访问的时候,都是统一用:/static/资源名的方式,就可以访问到资源,不论具体的目录是APP下的static,还是project下的common_static, 都可以用/static/资源名的方式访问到。

    为增强可移植性,在模板中可以用:STATIC_URL来代替具体的/static/来设置资源路径,但是需要在settings.py设置:

    设置settings.py

    在INSTALLED_APPS中要有’django.contrib.staticfiles’

    INSTALLED_APPS = [
        'django.contrib.admin',
        'django.contrib.auth',
        'django.contrib.contenttypes',
        'django.contrib.sessions',
        'django.contrib.messages',
        'django.contrib.staticfiles',
    ]
    

    TEMPLATES 中,context_processors中,加入django.template.context_processors.static

    TEMPLATES = [
        {
            'BACKEND': 'django.template.backends.django.DjangoTemplates',
            'DIRS': [
                os.path.join(BASE_DIR, "templates/"),
            ],
            'APP_DIRS': True,
            'OPTIONS': {
                'context_processors': [
                    'django.template.context_processors.debug',
                    'django.template.context_processors.request',
                    'django.contrib.auth.context_processors.auth',
                    'django.contrib.messages.context_processors.messages',
                    'django.template.context_processors.static'
                ],
            },
        },
    ]
    

    新增STATICFILES_DIRS

    STATIC_URL = '/static/'
    STATICFILES_DIRS = [
        os.path.join(BASE_DIR,"static/"),
    ]
    

    模板中调用

    <img src="{{STATIC_URL}}pic.jpg " />
    

    media

    设置settings.py

    媒体文件的绝对路径:

    MEDIA_ROOT = os.path.join(BASE_DIR, "file/")
    

    媒体文件的相对路径:

    MEDIA_URL = '/file/' 
    

    设置静态文件路径

    STATIC_PATH = os.path.join(BASE_DIR, "file/")
    

    urls.py 影射路径

    urlpatterns = [
        url(r'^admin/', admin.site.urls),
        url(r'^static/(?P<path>.*)$', 'django.views.static.serve', {'document_root':settings.STATICFILES_DIRS, 'show_indexes':False}),
        url(r'^file/(?P<path>.*)$', 'django.views.static.serve', {'document_root':settings.MEDIA_ROOT, 'show_indexes':False}),
    ]
    
  • 相关阅读:
    POJ 3616 Milking Time(简单DP)
    POJ 2954 Triangle(计算几何Pick定理)
    POJ 3664 Election Time(简单的快速排序)
    POJ 2007 Scrambled Polygon(计算几何凸包)
    POJ 3673 Cow Multiplication(简单数学)
    POJ 3663 Costume Party (快速排序)
    计算几何模板(一)
    [转]Silverlight中使用MVVM(3)
    Silverlight中使用MVVM(2)
    Silverlight使用Binding动态绑定数据
  • 原文地址:https://www.cnblogs.com/lykops/p/7348037.html
Copyright © 2011-2022 走看看