2016-11-30 115 views
-1

這個問題可能以前被問過,但我無法找到一個好的答案。我正在使用Django並且想要託管本地DOJO而不是使用CDN。託管本地Dojo的Django服務器

我有一個位於/share/dojo-release-1.11.2中的dojo副本。該文件夾的子文件夾有 - dijitdojodojoxthemes

我應該使用dojoConfig = {..}?如果是這樣,它的語法是什麼?

感謝您的幫助。

謝謝!

回答

0

是的,你必須例如在HTML文件中使用dojoConfig,前裝dojo.js腳本

(添加claro CSS主題和追加class="claro"body

<script> 
    var dojoConfig = { 
     //parseOnLoad: true, //if you want to parse without using parser.parse() set the value to true otherwise to false 
     async: true 
    }; 
</script> 
<link rel="stylesheet" href="{% static %}share/dojo-release-1.11.2/dijit/themes/claro/claro.css" /> 
<script type="text/javascript" src="{% static %}share/dojo-release-1.11.2/dojo/dojo.js"></script> 
<script> 
    require([ 
     "dojo/parser", 
     "dijit/form/Button" 
    ], function(parser,Button) { 
     parser.parse(); 
    }); 
</script> 
</head> 
<body class="claro"> 
    <div data-dojo-type="dijit/form/Button"> 
     test Button 
    </div> 
</body> 

PS:注意{{ STATIC_URL }}依賴關於如何在django服務器中加載dojo,所以你必須把它作爲你的配置。 MYAPP 我不familar Django的,但i'llgive你這個例子:

你有一個應用程序稱爲myapp: 內myapp你必須添加里面myapp/settings.py一些指令來訪問靜態文件,

STATIC_URL = '/static/' 
STATIC_ROOT = os.path.join(BASE_DIR, 'static') 

然後在HTML模板您加載文件如下:

... 
<script type="text/javascript" href="{% static 'share/dojo-release-1.11.2/dojo/dojo.js' %}"> 
... 

所以在你的一個結構pp應該看起來像:

mysite 
    ├── templates 
    ├── static 
    |  └─── share 
    |   └─── dojo-release-1.11.2 
    |     └─── ... 
    ├──... 
    . 
    . 
    . 
    └──setting.py 

就是這樣。

+0

謝謝bRIMO。我對Django也有所瞭解。您是否友好地詳細瞭解一下 >>注意{{STATIC_URL}}取決於您如何在您內部加載dojo 因此,我應該如何在django服務器中加載它,假設我有一個名爲myapp的應用程序Django的。 –

+0

@developerdeveloper好心,看我的答案。 –

+0

@developerdeveloper是否有幫助? –

相關問題