Nasıl şablonlar içinde onlara medya / stil ve link koyar mısın Django: | Netgez.com
SORU
15 Ocak 2009, PERÅžEMBE


Nasıl şablonlar içinde onlara medya / stil ve link koyar mısın Django:

Bu soruyu varyasyonları istendi, ama hala benim stil şablonları işlenirken doğru yüklemek için gidemiyorum.

Güçlü üretim, farkındayım cesareti olan gelişimi sırasında Django süreci - statik medya hizmet etmeye çalışıyorum. Benim yapılandırma ve benim şablon göndeririz, ve umarım birileri beni yanlış nereye gittiğimi anlamak için yardımcı olabilir.

Django projesi web sitesinde örnek, ancak bir şablondan senin stil bakın nasıl söz etmiyor takip etmeye çalıştım unutmayın. Ayrıca aynı şeyi çok farklı varyasyonlar denedim, kodu/ayarlarımı tarif. bir ara biraz daha fazla olabilir.

settings.py

MEDIA_ROOT = 'D:/Dev Tools/django_projects/dso/media'
MEDIA_URL = '/media/'
ADMIN_MEDIA_PREFIX = '/media/'

urls.py

from django.conf.urls.defaults import *
from django.conf import settings
from django.contrib import admin

admin.autodiscover()

urlpatterns = patterns('',
    (r'^admin/(.*)', admin.site.root),
    (r'^ovramt/$', 'dso.ovramt.views.index'),
)

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

Şablon: içinde benim

<head> 
<title> {% block title %} DSO Template {% endblock %} </title> 
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" >
<link rel="stylesheet" type="text/css" href="../media/styles.css">
</head>

Ben seni, dosyaları (şablonlar/medya) doğru dizinde dosya sistemi temin ederim. Eğer sağlamak için gereken herhangi bir ek bilgi varsa, lütfen bir yorum gönderin.


Düzenleme:

Sahip olduğum sorunlardan biri bir kullanımı '/' benim bağlantılar ön yerleştirmeyi. Eğer eğik çizgi işareti bulunur, bu siteyi kökünden açtı. Eğer eğik ise hiçbir bağlantı mevcut seviyesinde açıldı. Bir örnek:

www.example.com/application/ bir bağlantı vardır "/app2/ ve bir bağlantı "app3/".
uyg2 www.example.com/app2/ ' da başlayacak ve app3 www.example.com/application/app3/ açık olacak. Bu bana sanırım kafa karıştırıcıydı.

CEVAP
15 Ocak 2009, PERÅžEMBE


Ben bunu kendim yapmak vardı.

settings.py:

MEDIA_ROOT = 'C:/Server/Projects/project_name/static/'
MEDIA_URL = '/static/'
ADMIN_MEDIA_PREFIX = '/media/'

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}),
    )

şablon dosyası:

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

Dosya burada yer alan:

"C:/Server/Projects/project_name/static/css/style.css"

Bunu PaylaÅŸ:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • ★ByScrapi★ Designs

    ★ByScrapiâ

    27 AÄžUSTOS 2013
  • oHeymarvin

    oHeymarvin

    11 Temmuz 2013
  • Tinkernut

    Tinkernut

    28 Aralık 2006