目前我进展到 Ajax 这一章节了,当下的任务是迁移购物车 将购物车迁移到左边的边框,理想的效果图应该如下图所示:
不过目前我的购物车,还比较丑陋,没有出现理想的界面,我的界面如下,现在的问题主要在页面布局上,撇开 Ajax,求助一下布局文件以及相关的实现吧。
我的界面为何如此丑陋??目前我没有找到解决方法,也没有定位到具体的原因,只能说下我淫想的猜测(没用过 Gimp,非常不习惯) 下图中的 side 元素,占据了太多的位置,理想的位置是在左侧边栏;main 应该在屏幕的中右方 . 按照书中的做法,通篇的布局文件是在 depot.css 中定义的;而 Rails32 版中,对应的 app/views/layouts/application.html.erb 文件中有如下的代码,
<%= stylesheet_link_tag "application" %><!-- --> <%= javascript_include_tag "application" %><!-- --> <%= csrf_meta_tag %><!-- --> stylesheet_link_tag 是指向“application”的,在 Rails3.0 中的相关代码 stylesheet_link_tag 参数是“depot",即书中一直以来操作的 depot.css 布局文件。depot.css 文件所在的目录为 public/stylesheets/depot.css,side 和 main 在其中已经定义了。书中的源码是 http://media.pragprog.com/titles/rails4/code/rails30/depot_f/public/stylesheets/depot.css 为了验证,我对里面的 side 和 main 元素进行了相应参数的调整,但是在我的浏览器中并没有相应的变动。
关于这个疑问,我还没有弄明白里面到底是怎么实现的。 打开首页,rake routes 展示的结果是指向 store#index,浏览器应该会打开 store 目录下面的 index.html.erb 文件,但是实际上好像打开的是与 store 同级目录 layouts 中的 application.html.erb 文件,这是为什么,在书中的哪个章节有详细的介绍呢?在打开 application.html.erb 这个文件,里面的代码中有关键性的两句代码,Rails3.2 版中的代码应该是如下的样子,stylesheet_link_tag 中明明写的是 application,实际上好像生效的是 public/stylesheets/depot.css 这个样式代码呢? <%= stylesheet_link_tag "application" %><!-- --> <%= javascript_include_tag "application" %><!-- -->