“Jump Start Sinatra”一书中没有在Sinatra应用程序中显示SCSS样式

时间:2014-01-07 19:13:30

标签: ruby sinatra sass

我正在按照本书Jump Start Sinatra中的教程进行操作,我查看了文件中的拼写错误。但出于某种原因,风格不会出现。

以下是说明

enter image description here

enter image description here

这就是我所拥有的

main.rb的

require 'sass'
require 'sinatra'
require 'slim'
require 'sinatra/reloader' if development?

get('/styles.css'){ scss :styles }

get '/' do
  slim :home
end

get '/about' do
    @title = "All about this website"
  slim :about
end

get '/contact' do
  slim :contact
end

not_found do
  slim :not_found
end

require 'sass'

get('/styles.css'){ scss :styles }

这本书说要从公共文件夹中删除旧的styles.css,我做了(之前工作正常)。这本书确实说要将styles.scss包含在views目录中。这是我的结构和 styles.css 文件

enter image description here

这是否意味着我还应该删除对layout.slim文件中的CSS文件的引用?这就是我现在所拥有的

layout.slim

doctype html
html lang="en"
  head
    title== @title || "Songs by Sinatra"
    meta charset="utf-8"
  body
    header
      h1 Songs by Sinatra
      == slim :nav
      section
        == yield

我缺少什么?这是一个错字吗?我忘了做某事吗?这本书是否有信息缺口,它假定读者会知道这样做?我添加了代码,然后运行gem install sass并重新启动服务器。那么我可能会失踪什么?

1 个答案:

答案 0 :(得分:0)

好的,这有多个错误。希望我的解释可以促使您提高解决问题的能力。

我的 styles.css 文件中确实有一些印刷错误,如评论中所述。所以为了测试它,我访问了他们在github上的回购。然后复制/粘贴到我的文件中。

然后我注意到作者在解释布局文件中应该做什么方面做得不好。所以我在回购中检查了他的文件(顺便说一下,书中的内容'之前的章节并不准确)。无论如何这里是有效的布局文件

layout.slim

doctype html
html lang="en"
  head
    title== @title || "Songs by Sinatra"
    meta charset="utf-8"
    link rel="stylesheet" href="/styles.css"
body
  header
    h1 Songs by Sinatra
    == slim :nav
    section
      == yield

需要修改以反驳 CSS 文件

link rel="stylesheet" href="/styles.css"