之前生成了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小节:
然后在urls.py中增加static的url映射:
启动server,就可以通过http://127.0.0.1:8000/static/productlist.html看到设计好的界面了。
源代码:http://download.csdn.net/detail/thinkinside/4036963
在下一节,终于可以修改模板,美化产品清单页的样式了。
分享到:
相关推荐
- **博客应用(Blog app)**: 引入数据库模型(Database Models)、管理后台(Admin)、静态文件(Static files)、个别博客页面以及测试。 - **表单应用(Forms app)**: 介绍Django中的表单处理,包括更新表单和...
Django可以通过在模板中引入Bootstrap CSS和JS文件来使用它。 2. **模板标签**:Django模板语言允许我们嵌入Bootstrap的HTML类和组件,如导航条、按钮、表单等,以实现美观的界面。 3. **自定义主题**:Bootstrap...
在模板中引入Bootstrap CSS和JS,使用其组件创建布局和表单。 2. **jQuery**:虽然Django视图和模板可以处理大部分后端逻辑,但前端交互常需JavaScript库,如jQuery。在Django中集成jQuery,增强用户体验。 3. **...
- 在模板中引入编辑器,设置相关参数,如初始化宽度、高度等。 三、xadmin与DjangoUeditor的整合 将DjangoUeditor集成到xadmin中,可以为后台管理系统提供更优秀的文本编辑体验。主要步骤如下: 1. 在xadmin的...
这包括减少HTTP请求、压缩资源、利用CDN加速静态资源加载、优化图片大小、实现服务器端渲染等手段。 八、测试与维护 项目开发完成后,需要进行单元测试、集成测试和压力测试,确保功能完整且稳定。发布后,持续监控...
07 django静态文件之static 08 django的url控制系统 09 django的urlConf补充 第50章 01 django之视图函数的介绍 02 django视图之redirec 03 django模板之变量 04 django模板之过滤器 05 django模板之控制语句if和...