我现在为此苦苦挣扎了几个小时,尝试了我找到的所有解决方案,但没有运气。尽管如此,我第一次尝试从书中运行 Depot 示例是在没有应用任何 CSS 的情况下运行的。
我确定 scss 已编译,因为 chrome 向我显示 application.css、scaffolds.css 和 products.css 已加载。我尝试创建其他 css 文件 - 不是 scss - 但只有部分运气,只应用了一些样式 - 其余与用户代理样式表匹配并继承了一些脚手架.css 属性 - 但不是重要的。
我在 application.html.erb 中加载所有 css:
<%= stylesheet_link_tag "application", :media => "all" %>
在同一个文件中,我声明类:
<body class="<%= controller.controller_name %>">
products/index.html.rb 中的表没有什么不寻常的:
<table>
<% @products.each do |product| %>
<tr class="<%= cycle('list_line_odd', 'list_line_even') %>">
<td><%= image_tag(product.image_url, class: 'list_image') %></td>
<td class="list_description">
<dl>
<dt><%= product.title %></dt>
<dd><%= truncate( strip_tags( product.description ), lenght: 80) %></dd>
</dl>
</td>
<td class="list_actions">
<%= link_to 'Show', product %><br/>
<%= link_to 'Edit', edit_product_path(product) %><br/>
<%= link_to 'Delete', product, confirm: 'Are you sure?', method: :delete %>
</td>
</tr>
<% end %>
</table>
和 products.scss(我尝试从 .css.scss 重命名,但没有改变)
.products {
table {
border-collapse: collapse;
}
table tr td {
padding:5px;
vertical-align:top;
}
.list_image {
width:60px;
height:70px;
}
.list_description {
width:60%;
dl {
margin:0;
}
dt {
color: #244;
font-weight:bold;
font-size:larger;
}
dd {
margin:0;
}
}
.list_actions {
font-size:x-small;
text-align:right;
padding-left:1em;
}
.list_line_even {
background: #e0f8f8;
}
.list_line_odd {
background: #f8b0f8;
}
}
我的 application.css 看起来像这样:
/*
*= require_self
*= require_tree .
*/
显然,出了点问题。我在 Rails 3.2.12 和 Ruby 1.9.3 上运行。Ruby on Rails 对我来说是新的,但我有强烈的学习欲望(而且我有一些时间学习——可能在接下来的几个月内不会发生)但是当我像这样被困住时,我会浪费时间,什么也学不到 -或几乎没有 - 新的:)
如果它被回答并且我碰巧没有找到正确的答案,非常抱歉,只需指出我正确的方向并给予推进器踢。