随机标题图像红宝石在铁轨上

时间:2016-08-04 16:29:46

标签: css ruby-on-rails ruby

我使用以下代码在类别页面的标题中随机化图像,但我真的不明白为什么这种方法不起作用。

它给了我这个错误Invalid CSS after "...ackground: url(": expected ")", was "<%= randomized_..."

在这一行 #necklace_header { background: url(<%= randomized_header_image %>) no-repeat center center fixed; width: 100%;

在我的观看/分类/ show.html.erb中我有这段代码

<header id="necklace_header">
<h1>
  <%= @category.name %>
</h1>
</header>



<%= render "categories/table", products: @products %>



<% if current_user && current_user.admin? %>
    <%= link_to 'Edit', edit_category_path(@category) %> |
<% end %>

<%= link_to 'Back', root_path %>

在我的categories.scss中我有这段代码

#necklace_header {
    background: url(<%= randomized_header_image %>) no-repeat center center fixed;
    width: 100%;


    background-size: cover;  

    height: 360px;
    margin-bottom: 20px; 

}

在application_helper.rb中我得到了这段代码

module ApplicationHelper

    def randomized_header_image
        images = ["assets/foo.jpg", "assets/random.jpg", "assets/super_random"]
        images[rand(images.size)]
    end

end

因为我一般都是铁轨和网络编码的新手,所以我无法弄清楚这一点。如果有人能为我澄清这一点,我会很棒。

1 个答案:

答案 0 :(得分:2)

作为OP confirmed,我的建议奏效了。我将把它转回给未来读者的答案。

你有.scss文件,所以ERB代码不起作用。但是尝试像asset-url('randomized_header_image')一样写它,它应该有效。 asset-url是SASS帮助者。