【问题标题】:Use of Angular's ng-src in Rails Production environment在 Rails 生产环境中使用 Angular 的 ng-src
【发布时间】:2014-09-09 18:08:36
【问题描述】:

我正在 Rails 中构建一个简单的 AngularJS 应用程序 - 当在 Heroku/生产环境中编译时 - ng-src 链接到正确的路径,但即使与 Rails 的 一起使用也不会生成标准的缩小图像所以我只是在“ng-src”图像上收到 404 错误。下面是我在 Rails 中引用的简单角度代码(并行 CoffeeScript 文件没有问题)。一切都在生产中,但 ng-src 正在抛出 404。有没有办法结合 erb 和 ng-src 使这项工作在生产中工作?当然,在本地这不是问题。我也四处寻找这个,但没有找到解决方案。

<div ng-controller="IndexCtrl">
<div class="left" ng-repeat="skill in skills | filter:query | orderBy:orderProp">
<div class="thumbnail">
   <img ng-src='/assets/logos/{{skill.shortname}}_s.png' alt="{{skill.alt}}" />
   <p>{{skill.description}}</p>
</div>
</div>
</div>

【问题讨论】:

  • 您能否将图像src 本身硬编码到erb 文件中以检查它是否正常工作?并将其与ng-src 拥有的值进行比较。另外,您能否根据您为应用程序服务的目的检查正常的src 属性?
  • 在 config/environments/production.rb 中更新/添加了以下内容以解决: config.serve_static_assets = true config.action_dispatch.x_sendfile_header = 'X-Accel-Redirect' config.assets.compile = true

标签: ruby-on-rails angularjs heroku coffeescript


【解决方案1】:

问题在于允许访问静态文件,而不是使用 RoR 或 angularJS。根据OP,解决方法是在文件config/environments/production.rb中配置:

config.serve_static_assets = true 
config.action_dispatch.x_sendfile_header = 'X-Accel-Redirect' 
config.assets.compile = true 

【讨论】:

  • 正确,我应该将我的标记为答案而不是评论。
猜你喜欢
  • 1970-01-01
  • 2014-01-28
  • 2014-06-02
  • 2018-06-04
  • 2022-08-15
  • 1970-01-01
  • 2015-11-09
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多