2012-01-11 76 views
1

最近我試圖添加webassets到我的django項目。所有的發展沒有任何問題(與Django的runserver)。當我將設置var ASSETS_DEBUG設置爲False時,所有js和css都被壓縮。與django_assets部署django項目的奇怪衝突

當我從我的部署結構(apache + mod_wsgi)中瀏覽我的項目時出現問題。從django_assets發出異常,並給我以下消息:

RegisterError:另一個包已經註冊爲「js_all」:],contents =('js/jquery-1.6.3.min.js','js/jquery-ui-1.8.16.custom.min.js','js/jquery-ui-timepicker-addon.js','js/ui.datepicker-es.js','js/tiny_mce/tiny_mce.js' ,'js/tiny_mce_config.js','js/public.js')>

無法找到此異常的原因,不會在開發中拋出。以下是我的資產文件:

使用
from django_assets import Bundle, register 
js = Bundle(
    'js/jquery-1.6.3.min.js', 
    'js/jquery-ui-1.8.16.custom.min.js', 
    'js/jquery-ui-timepicker-addon.js', 
    'js/ui.datepicker-es.js', 
    'js/tiny_mce/tiny_mce.js', 
    'js/tiny_mce_config.js', 
    'js/public.js', 
    filters='yui_js', 
    output='js/gen/packed.js' 
    ) 
register('js_all', js) 

css = Bundle(
    'css/smoothness/jquery-ui-1.8.16.custom.css', 
    'css/jquery_ui_fixes.css', 
    'css/public.css', 
    'css/forms.css', 
    filters='yui_css', 
    output='css/gen/packed.css', 
    ) 
register('css_all', css) 

Webassets版本是一個在點子庫: = 版本(0,6)

我希望有人可以幫助我。

艾薩克

+0

你確定這沒有被導入兩次嗎?嘗試註釋掉寄存器('js_all',js),看看你是否得到'css_all'的第二個錯誤 – Ted 2012-01-11 21:47:07

回答

2

因爲一些愚蠢和Django的,你的settings.py文件可以兩次導入。因此註冊將發生兩次。閱讀:

http://blog.dscpl.com.au/2010/03/improved-wsgi-script-for-use-with.html

關於這個問題的所有細節可怕。

+0

也許這是很好的添加到你的答案,因爲這個愚蠢的,你必須趕上RegisterError嘗試除了註冊電話外的區塊。 – jaapz 2013-08-28 11:50:19

+0

在最近的Django版本中,除非你自己以某種方式觸發它,否則這個雙重導入不應該成爲問題。 – 2013-08-28 22:52:00