如何实现Bootstrap 4和Rails 5?

8

我是一个Ruby的新手,正在尝试将Bootstrap 4.0.0.alpha4导入Rails 5.0.0。 我已经安装了bootstrap、bootstrap-sass、autoprefixer-rails等宝石,并且在application.css.sass中使用了@import "bootstrap",但是页面上仍然没有出现Bootstrap。我在视图上有一个按钮,我想实现Bootstrap的设计。我甚至在不同的项目中尝试过,但是它们都没有生效。任何帮助将不胜感激。谢谢。
代码如下。

Gem文件:

    source 'https://rubygems.org'


# Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
gem 'rails', '~> 5.0.0'
# Use postgresql as the database for Active Record
gem 'pg', '~> 0.18'
# Use Puma as the app server
gem 'puma', '~> 3.0'

gem 'bootstrap'
gem 'bootstrap-sass'
gem 'autoprefixer-rails'

gem 'wdm'
# Use SCSS for stylesheets
gem 'sass-rails', '~> 5.0'
# Use Uglifier as compressor for JavaScript assets
gem 'uglifier', '>= 1.3.0'
# Use CoffeeScript for .coffee assets and views
gem 'coffee-rails', '~> 4.2'
# See https://github.com/rails/execjs#readme for more supported runtimes
# gem 'therubyracer', platforms: :ruby

# Use jquery as the JavaScript library
gem 'jquery-rails'
# Turbolinks makes navigating your web application faster. Read more: https://github.com/turbolinks/turbolinks
gem 'turbolinks', '~> 5'
# Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder
gem 'jbuilder', '~> 2.5'
# Use Redis adapter to run Action Cable in production
# gem 'redis', '~> 3.0'
# Use ActiveModel has_secure_password
# gem 'bcrypt', '~> 3.1.7'

# Use Capistrano for deployment
# gem 'capistrano-rails', group: :development

group :development, :test do
  # Call 'byebug' anywhere in the code to stop execution and get a debugger console
  gem 'byebug', platform: :mri
end

group :development do
  # Access an IRB console on exception pages or by using <%= console %> anywhere in the code.
  gem 'web-console'
  gem 'listen', '~> 3.0.5'
  # Spring speeds up development by keeping your application running in the background. Read more: https://github.com/rails/spring
  gem 'spring'
  gem 'spring-watcher-listen', '~> 2.0.0'
end

# Windows does not include zoneinfo files, so bundle the tzinfo-data gem
gem 'tzinfo-data', platforms: [:mingw, :mswin, :x64_mingw, :jruby]

1
这个链接已经涵盖了你需要做的大部分内容。 - Sagar Pandya
如果您已经解决了问题,请在下面编写一个答案(是的,您可以回答自己的问题)。这可能会帮助未来的其他人。 - Sagar Pandya
不,它还没有解决,但如果我解决了,我一定会在这里写下解决方案。 - M.Shaikh
上一个Readme文件是针对Bootstrap 3的;此链接 是针对Bootstrap 4的,所以答案应该在这里——除非你已经查过了。 - Sagar Pandya
1
@M.Shaikh,请发布你的application.css和视图文件。 - BigRon
显示剩余3条评论
3个回答

4

如果您需要将Bootstrap集成到Rails中,可以参考官方test/dummy_rails项目骨架和bootstrap-rubygem官方项目中的参考代码。该项目用于集成测试,因此您可以确保它能够与Bootstrap gem的最新版本以及项目测试矩阵中的任何Ruby/Rails版本一起使用。

请确保已将以下代码行(或等效代码)添加到您的Rails项目中:

如果问题仍然存在,请发布您的Rails应用程序的完整源代码或足够的代码作为Minimal, Complete and Verifiable Example,以产生您的问题-总有可能您已经在本地进行了一些更改,但您没有考虑到这些更改实际上是重要的。


3

非常棒的链接,这是我的配置:

Gemfile:

gem 'compass-rails', '2.0.4'
gem 'bootstrap-sass', '~> 3.1.1.1'
gem 'autoprefixer-rails', '6.3.7'
gem 'sass-rails', '~> 5.0.1'

config/initializers/assets.rb

Rails.application.config.assets.version = '1.0'
Rails.application.config.assets.paths << Rails.root.join('app', 'assets', 'fonts')

在我的Sass文件树上:

app/assets/stylesheets
|
|--components
|    |
|    |--variables, 
|    |--mixins and another css/sass files
|
|--bootstrap.sass
|--application.sass

application.sass:

@import 'bootstrap'
@import 'components/*'

bootstrap.sass:

// Core variables and mixins
@import 'bootstrap/variables'
@import 'bootstrap/mixins'

// Reset
@import 'bootstrap/normalize'
//@import 'bootstrap/print'

// Core CSS
//@import 'bootstrap/scaffolding'

标题:

= 引用样式表 'application',媒体:'all'


3
问题是关于Bootstrap 4而不是Bootstrap 3。 - Fabrizio Bertoglio

1
你可以在https://v4-alpha.getbootstrap.com/下载Bootstrap文件,然后将它们复制粘贴到你的资产文件(vendor)中,再通过调用application.js和application.css导入到你的应用程序中,或者像调用其他js和css文件一样调用它。这样你就可以使用Bootstrap了。

非常糟糕的想法。Rails 中有相应的 gem 库可以解决这个问题。;/ - Darex1991
1
@Darex1991 这个 gem 没有更新到最新版本。 - Fabrizio Bertoglio

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接