【问题标题】:Rails scaffolds scss reset each time a scaffold is generatedRails 脚手架 scss 每次生成脚手架时都会重置
【发布时间】:2012-09-26 22:03:42
【问题描述】:

每次我执行rails generate scaffold Name 时,app/assets/stylesheets/scaffolds.css.scss 文件都会被覆盖(好吧,我会被提示覆盖它)。我不想要这个,所以我当然可以在提示覆盖时输入n,但我想知道处理脚手架样式的正确方法。

我可以将 css 写入稍后加载的 css 文件中,以覆盖脚手架.css.scss 文件中必要的 css。但不仅丑陋(生成并加载了每个请求的不必要/未使用的 css),而且我不知道如何在将鼠标悬停在链接上时不更改前景色和背景色(来自scaffolds.css.scss):

a {
  &:hover {
    color: #fff;
    background-color: #000;
  }
}

scaffolds.css.scss 中删除类似上述内容的正确方法是什么?

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-3 ruby-on-rails-3.2 sass scaffolding


    【解决方案1】:

    想要永久禁用禁用样式表,或者通常忘记--no-stylesheets 开关(我愿意!)

    在您的生成器中禁用样式表!!

    config/application.rb

    config.generators do |g|
     g.stylesheets false
    end
    

    【讨论】:

    【解决方案2】:

    看看这个StackOverflow answer

    rails g scaffold MyModel --no-stylesheets

    【讨论】:

    • 所以要更改脚手架的样式表,我们应该修改scaffolds.css.scss,然后不为脚手架生成样式表?
    • 我认为这有点讨论,但脚手架被认为非常适合快速原型制作。一旦您设置好模型或有一个良好的开始,您可以修改代码或从头开始,如果您知道自己想要什么。更多讨论here
    • 我的问题是关于修改脚手架样式表的正确方法(默认情况下,它似乎也包含在 Rails 的所有网页中),而不是脚手架何时以及是否有用。
    【解决方案3】:

    请记住,您始终可以在自己的样式表中重新定义这些内容,并通过修改 assets/stylesheets/application.css 将它们包含在脚手架样式表之后

     *= require_self
     *= require scaffolds
     *= require YOUR_FILE
    

    (如果您不使用 application.css,默认情况下样式表按字母顺序包含,这可能是您想要的,也可能不是。)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-12
      • 2018-12-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-12-18
      相关资源
      最近更新 更多