Kendisi için bir javascript dosyası içeren bir DjangoCMS eklentisi üzerinde çalışıyorum. Eklentinin Javascript'i, sitenin geri kalanıyla aynı kütüphanelere dayanır. Yani, burada şu anda ne var kavramsal parçası:Bir DjangoCMS eklentisi Sekizai addtoblock kullanmak için doğru yolu
Basetemplate.html özel eklenti benim DjangoCMS için yüklenen şablonda Şimdi
{% load cms_tags sekizai_tags and_a_bunch_of_other_stuff %}
<html>
...
<head>
{% render_block "css" %}
</head>
<body>
...
{% addtoblock "js" %}[jquery]{% endaddtoblock %}
{% addtoblock "js" %}[google api, data, more cool stuff like jqplot.]{%endaddtoblock%}
{% addtoblock "js" %}[my site's library js.] {% endaddtoblock %}
{% render_block "js" %}
</body>
</html>
,
great_calendar_plugin_template.html
{% load sekizai_tags and_a_couple_other_things %}
{% addtoblock "js" %}[plugin javascript file dependency]{%endaddtoblock %}
{% addtoblock "js" %}[plugin javascript file]{% endaddtoblock %}
....
Eklenti javasc ne yaparsam yapayım ript dosyaları, ait oldukları yerin altında değil, JQuery ve diğer tüm bağımlılıkların üstündeki son HTML'ye yerleştirilir. Burada neyi özlüyorum?
Teşekkürler.
harika. Ve DjangoCMS için teşekkürler! –
Bunun başka bir soru gönderilip gönderilmediğinden emin değilim, ancak yönetici kullanıcı giriş yaptığında, adminmedia js dosyaları 'js' bloğuna eklenir, bu yüzden jquery yeniden tanımlanır (jquery-ui ve jQuery eklentilerim darbeler) lib'larımdan). Bunun yerine adminmedia bloğun tepesinde işlenmesini sağlamak için herhangi bir yolu var mı? –
Nihayetinde benim için en iyi şeyin django-cms'yi [toolbar.html] 'de küçük bir ayarlamayla yeniden kurmak olduğunu belirledim (https://github.com/divio/django-cms/blob/develop/cms/templates/ cms/toolbar/toolbar.html) dosyası, koşullu olarak $ tanımlı olup olmadığına bağlı olarak jQuery javascript komut dosyasında yazılır. CMS araç çubuğunun yeniden geliştirildiğini okudum, umarım bu şeyi başlatmadan önce bir yükseltme var demektir! –