• Django实战(5):引入bootstrap,设置静态资源


    之前生成了Product类的scaffold,但是如同rails的开发者David所讲的那样,scaffold几乎没什么用。所以按照《Agile Web Development with Rails 4th》中的迭代计划,下一步的修改是美化list页面:

    但是这个界面还是太丑陋了。其实,有了bootstrap后,很多站点都变成了“又黑又硬”的工具条+“小清新”风格。我们即不能免俗,又懒得自已设计风格,不妨用bootstrap将产品清单界面重新设计成如下的风格:

    下面让我们来实现这个界面。显然web界面会使用一些静态资源(css,js,image等),

    要在Django中引入静态资源)。Django在正式部署的时候对于静态资源有特殊的处理,在开发阶段,可以有简单的方式让静态资源起作用。

    首选在project目录下面创建一个static目录,并将静态资源按合理的组织方式放入其中:

    static/

          css/

               bootstrap.min.css

          js/

          images/

          productlist.html

    其中productlist.html是请界面设计师实现的产品清单静态页面;css/bootstrap.min.css 是该页面使用的样式表,来自bootstrap,将来整个系统都将使用这一套样式风格;js目录现在为空,以后可以将javascript代码放在这 里;images文件夹同理。

    我们可以看到,Django对于静态内容的管理非常符合管理。相比之下,rails要求你将静态内容放到很怪异的结构中:

    app/assets/

         images/

         javascripts/

         stylesheets/

    界面设计师实现的界面要想运行起来,还需要修改相关的路径,或者改变自己的目录设置习惯。这种设计让人难以理解。

    回到Django,让静态资源起作用只需要简单的配置(下面的做法只适用于开发阶段):

    修改settings.py的static files小节:

    import os
    ... ...
    
    # Additional locations of static files
    HERE = os.path.dirname(__file__)
    STATICFILES_DIRS = (
        # Put strings here, like "/home/html/static" or "C:/www/django/static".
        # Always use forward slashes, even on Windows.
        # Don't forget to use absolute paths, not relative paths.
        HERE+STATIC_URL,
    )

    然后在urls.py中增加static的url映射:

    from django.contrib.staticfiles.urls import staticfiles_urlpatterns
    ... ...
    # for development only
    # This will only work if DEBUG is True.
    urlpatterns += staticfiles_urlpatterns()

    启动server,就可以通过http://127.0.0.1:8000/static/productlist.html看到设计好的界面了。

    源代码:http://download.csdn.net/detail/thinkinside/4036963

    在下一节,终于可以修改模板,美化产品清单页的样式了。

  • 相关阅读:
    【剑指offer】对称的二叉树
    【剑指offer】数组中的逆序对
    【剑指offer】不用加减乘除做加法
    【剑指offer】和为S的连续正数序列
    【剑指offer】删除链表中重复的结点
    【剑指offer】平衡二叉树
    Math.ceil()、Math.floor()和Math.round()
    document.querySelectorAll遍历
    JS选择器querySelector和~All,三个原生选择器
    js 操作select和option常见用法
  • 原文地址:https://www.cnblogs.com/wuxl360/p/5787785.html
走看看 - 开发者的网上家园