2017-04-06 98 views
0

我遇到了rails 5.0.2和asset-pipeline问题。我只是试图将文件放在供应商文件夹中,然后在Application.js和.css文件中引用它们。Ruby on Rails资产管道(找不到文件)

我不断收到以下错误 Sprockets::FileNotFound

Showing /Users/user/Ruby/app_name/app/views/layouts/application.html.erb where line #16 raised: 

couldn't find file 'pages-plugins/bootsrapv3/css/bootstrap.min' with type 'text/css' 
Checked in these paths: 
/Users/user/Ruby/app_name/app/assets/config 
/Users/user/Ruby/app_name/app/assets/images 
/Users/user/Ruby/app_name/app/assets/javascripts 
/Users/user/Ruby/app_name/app/assets/stylesheets 
/Users/user/Ruby/app_name/vendor/assets/javascripts 
/Users/user/Ruby/app_name/vendor/assets/stylesheets 
/Users/user/.rvm/gems/ruby-2.3.1/gems/jquery-rails-4.3.1/vendor/assets/javascripts 
/Users/user/.rvm/gems/ruby-2.3.1/gems/coffee-rails-4.2.1/lib/assets/javascripts 
/Users/user/.rvm/gems/ruby-2.3.1/gems/actioncable-5.0.2/lib/assets/compiled 
/Users/user/.rvm/gems/ruby-2.3.1/gems/turbolinks-source-5.0.0/lib/assets/javascripts 
/Users/user/Ruby/app-name/vendor/pages 
Extracted source (around line #15): 

* BEGIN VENDOR CSS FOR PAGES 
*= require pages-plugins/pace/pace-theme-flash 
*= require pages-plugins/bootsrapv3/css/bootstrap.min 
*= require pages-plugins/font-awesome/css/font-awesome 
*= require pages-plugins/jquery-scrollbar/jquery.scrollbar 
*= require pages-plugins/bootstrap-select2/select2 

正如你可以看到/Users/user/Ruby/app_name/vendor/pages文件路径上面列出的路径列表上方(列表的底部)“托运”。

完整的文件路径为/Users/user/Ruby/app_name/vendor/pages/pages-plugins/

不知道如果我失去了一些东西明显?我试图在application.rb文件中注册资产,我也尝试将它们移到app/assets /目录中,但没有运气。

回答

1

供应商资产应放置在/vendor/assets/javascripts/vendor/assets/stylesheets - 将那些非常普通的资产置于/pages/pages-plugins/似乎过于复杂和愚蠢。

但是有bootstrap,font-awesome和许多流行库的“gemified”版本。使用它们通常比将供应商代码包含在存储库中更好,因为更新依赖关系会导致在版本历史记录中产生大量噪音和流失。

另一个巨大的优势是,“宝石版本”在开发中使用了资产的非微观形式,使得调试变得更加简单。