【问题标题】:How to serve stylesheet in Django如何在 Django 中提供样式表
【发布时间】:2009-11-13 06:50:43
【问题描述】:

我想在 Django 模板中使用 css。如果我在模板中提供 CSS,它就会起作用。 但我想以静态服务方式使用。

settings.py

       DEBUG =True
       MEDIA_ROOT = 'C:/WorkBase/Python/first/static/'
       MEDIA_URL = '/static/'
       ADMIN_MEDIA_PREFIX = '/media/'

TEMPLATE_DIRS = (

      'C:/WorkBase/Python/first/templates',
       )

TEMPLATE_LOADERS = (

      'django.template.loaders.filesystem.load_template_source',
      'django.template.loaders.app_directories.load_template_source',
      'django.template.loaders.eggs.load_template_source',

)

urls.py

        from django.conf import settings

        if settings.DEBUG:
                urlpatterns +=patterns(' ',
                (r'^static/(?p<path>.*)$','django.views.static.serve',{'document_root':settings.MEDIA_ROOT}),

)

上面一行出现“模式意外结束”错误

         <link rel="stylesheet" type="text/css" href="/static/css/style.css"/>

【问题讨论】:

    标签: css django


    【解决方案1】:

    我认为命名模式的“P”需要大写。 r'^static/(?P&lt;path&gt;.*)$'

    所有示例和文档都显示大写。 Python Regex Doc

    【讨论】:

      【解决方案2】:

      T. Stone 的回答一针见血。以下是我使用的示例:

      if settings.DEBUG:
              urlpatterns += patterns('',
                      (r'^static/(?P<path>.*)$', 'django.views.static.serve',
                              { 'document_root': os.path.join(os.path.dirname(__file__), "static")}),
              )
      

      【讨论】:

        猜你喜欢
        • 2023-03-11
        • 2010-10-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多