2014-02-14 69 views
0

我对网络编程颇为陌生,并开始使用Django。我使用默认教程,和其他一些例子,一切都很好。但是,现在我面临以下问题:我在Axure中创建了一个原型,并希望将其与现有项目集成。使用Axure我生成了html/css文件,并在Django中创建了一个“家庭”应用程序。问题是,当我将Axure的输出放在模板/ home文件夹中时,它可以加载默认的home.html,但会丢失图像和css文件。Django模板的Axure输出

我家的应用程序的结构是这样的:

入户

--templates

---家庭

----数据

----文件

----图片

----插件

----资源

---- home.html的

<div id="u0" class="ax_h1"> 
    <img id="u0_img" class="img " src=""/> 
    <img id="u0_img" class="img " src="resources/images/transparent.gif"/> 
    <!-- Unnamed() --> 
    <div id="u1" class="text"> 
     <p><span>Some text </span></p> 
    </div> 
    </div> 

它能够解决内部Pycharm这条路(不给任何错误)。如果我去文件夹本身并运行home.html一切都很好。但是,如果我运行整个项目和o到主页,它似乎找不到文件的路径。显示图标,但没有实际的图像。

有人可以帮忙吗?

回答

0

你需要设置你的静态文件properly

确保django.contrib.staticfiles在你INSTALLED_APPS

在您的应用程序添加STATIC_URL = '/static/'(或任何你想要的静态URL是)你settings.py

将静态文件名为static文件夹中

home/ 
    templates/ 
     home/ 
      home.html 
    static/ 
     images/ 
      transparent.gif 
     css/ 
     js/ 
     ... 

然后,您可以使用

<div id="u0" class="ax_h1"> 
    <img id="u0_img" class="img " src=""/> 
    <img id="u0_img" class="img " src="{{ STATIC_URL }}images/transparent.gif"/> 
    <!-- Unnamed() --> 
    <div id="u1" class="text"> 
     <p><span>Some text </span></p> 
    </div> 
    </div> 
+0

嗨Ngenator,谢谢你的回应! – user3310881

+0

我在INSTALLED_APPS中有django.contrib.staticfiles,在settings.py中设置了STATIC_URL ='/ static /'。 1)我尝试了你的解决方案,把{{STATIC_URL}}放到几个链接上,但它不起作用(当然我拷贝了所有的文件)。但是,添加“静态/”像src =“static/images/transparent.gif”的作品。我不明白为什么{{STATIC_URL}}不会,因为我不想硬编码所有链接。任何线索? – user3310881

+0

2)有没有什么办法可以让我们说另一个HOME_URL ='/ templates/home /'指向带{{HOME_URL}}的文件?我试过这个,但没有结果。问题是我已经创建了很多html/css/js文件,我不想通过它们来改变路径。 提前谢谢! – user3310881