【问题标题】:Migrating a rails app up to 3.1, having trouble getting sass to behave将 Rails 应用程序迁移到 3.1,无法让 sass 行为
【发布时间】:2011-08-22 05:19:34
【问题描述】:

我正在将一个之前的 Rails-3.1 应用程序迁移到 3.1(实际上,其他人完成了尝试迁移到 3.0 的部分工作;我现在想继续将它升级到 3.1)。

当我使用rails new 创建一个新的 Rails 3.1 应用程序时,骨架应用程序似乎很好。

但是,当我在迁移的应用程序中运行 rake testthin start 时,我得到:

/Users/dwhsix/.rvm/gems/ruby-1.9.2-p290@zmy/gems/sass-rails-3.1.0.rc.6/lib/sass/rails/template_handlers.rb:32:in `<class:SassTemplate>': undefined method `default_mime_type=' for Sass::Rails::SassTemplate:Class (NoMethodError)

认为我的东西配置正确。宝石是正确的,application.rb 有:

config.assets.enabled = true
config.generators.stylesheet_engine = :sass

还有什么地方需要的吗?

谢谢...

【问题讨论】:

    标签: ruby-on-rails-3.1 sass


    【解决方案1】:

    可能请尝试在 application.rb 中再添加一个,因为 rails 3.1 默认使用 scss

    config.sass.preferred_syntax = :sass
    

    initializers/mime_types.rb 有一些与 mime 相关的设置,所以你也可以尝试一下。

    【讨论】:

      【解决方案2】:

      如果您愿意,也可以使用 sass-convert 命令切换到 scss。我最初使用 sass 语法,但后来觉得我更喜欢 scss 并改用它。

      sass-convert -F sass -T scss mystyle.sass mystyle.scss
      

      【讨论】:

        【解决方案3】:

        好的,事实证明这是安装了太多版本的各种 gem 的问题。真正的罪魁祸首是错误版本的倾斜,它是由其他一些宝石引入的。清除它并重置 Gemfile.lock,就可以解决它。

        【讨论】:

          【解决方案4】:

          我刚才也遇到了同样的问题。我的解决方案是按照github issue 中的描述更新倾斜宝石。显然,默认的mime类型方法,是在tilt 1.3.0之后添加的。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2019-06-24
            • 2023-03-21
            相关资源
            最近更新 更多