找不到'twitter / bootstrap / bootstrap.less'

时间:2013-05-21 08:43:18

标签: ruby-on-rails twitter-bootstrap ruby-on-rails-4

我尝试使用Rails 4.0.0.rc1和ruby 1.9.3p392来使用Twitter Bootstrap Basics

然后我尝试访问 http://localhost:3000/products

我遇到了错误:

  

'twitter / bootstrap / bootstrap.less'未找到。

请参阅随附的屏幕截图。

https://github.com/tenzan/twitter-bootstrap.git

提供的代码

enter image description here

6 个答案:

答案 0 :(得分:32)

我要回答这个问题,注意我正在处理ruby 2 / rails 4应用程序(不是rails 3)

在application.css中要求Bootstrap LESS(bootstrap_and_overrides.css.less)在这里没有意义,因为管道已经带有“require_tree”。它会自动包含资产管道文件夹中的所有内容。

拔了几个小时后,我发现从组中删除了3个必需的宝石:Gemfile中的资产是修复它的唯一方法

所以,不要在Gemfile中执行此操作:

group :assets do
  gem "therubyracer"
  gem "less-rails"
  gem "twitter-bootstrap-rails"
end

而是这样做:

gem "therubyracer"
gem "less-rails"
gem "twitter-bootstrap-rails"

答案 1 :(得分:13)

Bootstrap gem附带了自己的捆绑版Bootstrap,它将负责导入。不要在:assets组中导入Bootstrap gem,否则将找不到gem资产。

请注意,资产组已在Rails 4中删除。

答案 2 :(得分:12)

你必须在application.css中要求Bootstrap LESS(bootstrap_and_overrides.css.less)

/*
 *= require bootstrap_and_overrides
 */

答案 3 :(得分:1)

我正在使用Bootstrap 2而不是Rails 4.0.1。我决定升级到Bootstrap 3,但是“twitter-bootstrap-rails”仍然在Bootstrap 2.有一些宝石可用,但我发现最简单的方法是手动添加css,js和字体(按照这些说明{{3 }})。

按照这些说明操作,确保安装了“therubyracer”和“less-rails”宝石,然后需要几个步骤来减少使用bootstrap 3和rails 4的步骤:

  • 下载Bootstrap 3源(Using bootstrap 3 with rails 4
  • 创建目录“/ vendor / assets / stylesheets / bootstrap”
  • 复制bootstrap源“less”目录的内容(少量文件) 到“/ vendor / assets / stylesheets / bootstrap”
  • 在“app / assets / stylesheets”中创建“bootstrap_and_override.css.less”。将“bootstrap.less”导入“bootstrap_and_override.css.less”,我的示例包括一些测试自定义:

    @import "../../../vendor/assets/stylesheets/bootstrap/bootstrap.less";
    @navbar-height: 120px;
    @body-bg: #F7911B;
    

希望这对想要尝试使用较少的Bootstrap 3的人有用。

答案 4 :(得分:0)

对我来说,Gemfile中缺少less-rails gem并添加它并运行bundle解决了这个问题。

答案 5 :(得分:0)

你可能错过了跑步
rails g bootstrap:install less
它就像一个魅力