标签: asset-pipeline

子目录清单文件的资产预编译

我正在使用Rails 3.1,在资产下我有这样的文件:

assets
  javascripts
    admin
        admin.js
        a1.js
    client
       client.js
        c1.js
Run Code Online (Sandbox Code Playgroud)

admin.js看起来像这样

//
//= require jquery
//= require jquery_ujs
//= require a1
Run Code Online (Sandbox Code Playgroud)

client.js看起来像这样

//
//= require jquery
//= require c1
Run Code Online (Sandbox Code Playgroud)

在开发模式下一切正常.当我做rake资产:预编译然后我没有在公共/资产中看到任何javascript文件.我确实看到了公共/资产中的所有样式表.

我认为这与在这种情况下清单文件(admin.js和client.js)在子目录中的事实有关.

那么rake资产是这样的:预编译不会查看子目录吗?

对于如何解决这个问题,有任何的建议吗.我更喜欢按照我的方式设置文件,因为我有一堆javascript文件.

ruby-on-rails asset-pipeline

9
推荐指数
1
解决办法
3065
查看次数

Rails 3.1 - 如何在vendor/assets/javascript中包含外部JavaScript库?

在多个视图中,我包含一个带有此HTML的外部JavaScript库:

<script type="text/javascript" 
        src="http://static.jstree.com/v.1.0pre/jquery.jstree.js">
</script>
Run Code Online (Sandbox Code Playgroud)

在阅读Rails 3.1 Asset Pipeline文档和讨论时,我得到的印象vendor/assets/javascripts是该文件应该被引用.我猜我可以下载文件(jstree.js)的副本并将其放在该目录中.但是,我想将它从项目站点加载,而不是制作它的本地副本.

我将什么放在vendor/assets/javascripts中从远程服务器上提取jstree.js的副本?我是否使用某种远程加载代码创建.js文件?似乎有各种各样的方法和/或混淆如何最好地做到这一点(请参阅这个问题的答案的长列表: 如何在另一个JavaScript文件中包含JavaScript文件?)

这样做是否有"Rails标准"惯例/库/流程?我是一个javascript新手,所以请明确,谢谢.

javascript ruby-on-rails-3 asset-pipeline

9
推荐指数
1
解决办法
5613
查看次数

如何让Rails 3.1在开发模式下连接资产?

我无法让资产管道在开发中连接(但不压缩!)资产.我的想法是,对于每个开发页面加载,我可以停止为微小的css/js文件发出70多个请求,但仍然可以查看行号,这样我就可以找出问题所在.

config/environments/development.rb有这个,我解释rails指南意味着资产应该编译成一个文件,但不压缩:

config.assets.compress = false
config.assets.compile = true
config.assets.digest = false
config.assets.debug = false
Run Code Online (Sandbox Code Playgroud)

但没有骰子:资产仍然是单独提供的,而不是在application.js中连接.

任何帮助,将不胜感激!

ruby-on-rails asset-pipeline

9
推荐指数
1
解决办法
2855
查看次数

可以将Google Map的Javascripts放入Asset管道(Rails)吗?

我添加了将谷歌地图加载到我的页面所需的JavaScript:

<% content_for :head do %>

<script type="text/javascript"
src="https://maps.googleapis.com/maps/api/js?key=API_KEY&sensor=false">
</script>
<script type="text/javascript">
function initialize() {
    var mapOptions = {
        center: new google.maps.LatLng(<%=@lat%>, <%=@lon%>),
        zoom: 5,
        mapTypeId: google.maps.MapTypeId.ROADMAP
    };
    var map = new google.maps.Map(document.getElementById("map_canvas"),
        mapOptions);
}
</script>

<% end %>
Run Code Online (Sandbox Code Playgroud)

正如你所看到的,我需要在加载地图时传递参数纬度和经度.正如我在标题中所说,我想将这些javascripts放入资产管道中,是否有可能如何?谢谢

javascript ruby-on-rails asset-pipeline

9
推荐指数
1
解决办法
3307
查看次数

Rails 4选择性资产摘要

我想指定哪些资产文件名获取摘要,哪些不是.我可以这样做吗?

我需要此功能,因为我将在外部网站上使用一个资产,此URL必须相同.

这个问题的最佳解决方案是什么?

ruby-on-rails asset-pipeline ruby-on-rails-4

9
推荐指数
1
解决办法
2497
查看次数

Rails调试资产:预编译:如何识别有问题的文件?

我有点绝望; 一直试图调试这个问题好几天了.任何人都知道如何排除故障?也许识别正在创建编码问题的文件?

FWIW:这适用于开发环境: RAILS_ENV=production bundle exec rake assets:precompile --trace

但这在"生产"服务器上失败了......不知道如何开始排除故障:

$ RAILS_ENV=production RAILS_GROUPS=assets bundle exec rake assets:precompile --trace
** Invoke assets:precompile (first_time)
** Invoke assets:environment (first_time)
** Execute assets:environment
** Invoke environment (first_time)
** Execute environment
** Execute assets:precompile
I, [2013-09-26T10:54:13.904512 #8431]  INFO -- : Writing /rails/myapp/releases/20130926175008/public/assets/sort_asc-9348a2efdfbcfa28135e10d4f7b42d0d.png
I, [2013-09-26T10:54:13.945109 #8431]  INFO -- : Writing /rails/myapp/releases/20130926175008/public/assets/sort_asc_disabled-30ae6b96c67982047ca4cfa0b8ce81b2.png
I, [2013-09-26T10:54:14.007435 #8431]  INFO -- : Writing /rails/myapp/releases/20130926175008/public/assets/sort_both-8018c940cc83bb4cf2bf0e68e41fdcc0.png
I, [2013-09-26T10:54:14.011733 #8431]  INFO -- : Writing /rails/myapp/releases/20130926175008/public/assets/sort_desc-05521e27371d9dd4e6febce9314bc7ed.png
I, [2013-09-26T10:54:14.017370 #8431]  INFO -- : Writing /rails/myapp/releases/20130926175008/public/assets/sort_desc_disabled-a3215e17d6bf077db02468b895fee228.png
rake …
Run Code Online (Sandbox Code Playgroud)

debugging rake encoding ruby-on-rails asset-pipeline

9
推荐指数
1
解决办法
2271
查看次数

Zurb Foundation 5,找不到modernizr

在生产模式下使用Foundation 5.0.2.0时,我得到了这个.

在Rails,Unicorn,NginX和Ubuntu上.

"NetworkError: 404 Not Found - http://mydomain.com/javascripts/vendor/modernizr.js"
Run Code Online (Sandbox Code Playgroud)

assets ruby-on-rails http-status-code-404 asset-pipeline zurb-foundation

9
推荐指数
1
解决办法
6014
查看次数

Rails4:image_url不在scss中生成摘要

我无法理解为什么我的css文件没有使用辅助方法将摘要附加到我的资产 image_url

我的资产已正确预先推荐,文件确实包含摘要.我也可以手动访问它们(使用消化的URL).最奇怪的是,它一开始就有效.

这是我的配置:

  config.assets.js_compressor = :uglifier
  config.assets.compile = false
  config.assets.digest = true
  config.assets.version = '1.0'
  config.serve_static_assets = false #also tried true
Run Code Online (Sandbox Code Playgroud)

这是我的application.css:*= require_tree.

这是common.scss文件,用于包含图像:

body{
    background: image_url('bg.jpg');
    font-family: 'Lato', sans-serif;
    overflow-x: hidden;
}
Run Code Online (Sandbox Code Playgroud)

图像以及样式表位于资产/图像和资产/样式表中的子文件夹中.

在这里我的宝石:

gem 'rails', '4.0.0'
gem 'sass-rails', '~> 4.0.0'
Run Code Online (Sandbox Code Playgroud)

我正在使用capistrano部署,但我不认为这是一个与capistrano相关的问题,资产编制得很好.

编辑 到目前为止我(尝试失败)的尝试:

image-url('image.jpg'); -> http://www.mydomain.it/images/image.jpg
image_url('image.jpg');    -> same as above
url(image-path('header.jpg'));  -> http://www.mydomain.it/images/image.jpg
asset-url('image.jpg', image); -> http://www.mydomain.it/image.jpg
Run Code Online (Sandbox Code Playgroud)

问题仍然存在:资产已编译但未经摘要请求.

编辑

关注这个问题Rails 4 image-path,image-url和asset-url不再适用于SCSS文件我移动了我的资产并使用asset-url的组合并将我的资产放在/ public文件夹中,背景图像正常工作,甚至虽然问题仍然存在,因为应用程序没有使用图像的带时间戳的版本.所以只有一个(不是好的,也不是坏的)解决方法.

ruby-on-rails asset-pipeline ruby-on-rails-4

9
推荐指数
1
解决办法
5399
查看次数

数据表按钮错误:未捕获未知按钮类型:打印

我有一个非常奇怪的问题,数据表上的打印按钮我找不到解决方案.

奇怪的是,我已经在不同页面的数据表中使用了打印按钮.

目前我正在开发一个ruby on rails项目,包括带有jquery-datatables-rails gem,版本3.3.0的数据表.

另外,我通过引用资产管道(dataTables.buttons.minbuttons.datatables.min.css)中的文件路径来包含按钮的CSS和JS文件.

加载所有文件没有任何问题或错误消息.初始化数据表也有效,但随后我添加了以下选项:

dom: 'Bfrtip'
buttons: [ 'print' ]
Run Code Online (Sandbox Code Playgroud)

到初始化程序,它导致崩溃与下面的错误消息:

Uncaught Unknown按钮类型:print dataTables.buttons.min.js?body = 1:18

不幸的是,我找不到任何在互联网上有同样问题的人.

我按照https://datatables.net/extensions/buttons/上的说明操作,将两个文件添加到我的页面.

此外,当我尝试使用excel按钮而不是打印按钮时,不会显示任何错误消息,但仍然没有按钮显示.

div.dt-buttons保持为空.

我该如何解决这个问题?

jquery ruby-on-rails datatables asset-pipeline

9
推荐指数
1
解决办法
2万
查看次数

在没有 webpack 的情况下使用 ActionText

我尝试在 Rails 6 上使用旧方式资产管道(没有 Webpack)来实现 ActionTest

几乎一切都很好,除了加载@rails/actiontext

在我的 application.js 中我有

//= require trix
//= require @rails/actiontext
Run Code Online (Sandbox Code Playgroud)

Riche编辑器出现,我可以更改粗体/斜体文本,但无法添加图像(未上传)

我有一个 JS 错误:未捕获的语法错误:无法在模块外使用 import 语句

在线:从actiontext中的attachment_uplaod.js的“./attachment_upload”导入{AttachmentUpload}。

没有 webpack 有什么方法可以实现这一点吗?

谢谢

ruby-on-rails asset-pipeline actiontext

9
推荐指数
1
解决办法
1371
查看次数