小编Jon*_*kes的帖子

ActionView :: Template :: Error(未预编译):在heroku雪松上

更新:

事实证明,有时results.image是零或"",所以这打破了应用程序,因为资产管道正在寻找像""这样的图像而没有找到它.现在我没有显示图像,如果没有图像,但我将不得不为缺失的图像添加默认图像......这应该是一个更永久的修复.


关于heroku cedar和Rails资产管道这个问题,我有很多问题,我尝试了很多解决方案,但是没有一个能够解决,而且可能是因为我遇到的问题有一个皱纹我没见过其他地方.

我的应用程序使用Rails 3.2.6,我已经将它部署在Heroku的雪松堆栈上.这是一个基本的搜索应用程序,通过websolr搜索附加的postgres数据库,所以当你加载索引(索引#index)而没有params [:q] .present?你有一个搜索框,这很好用.但是当我在搜索框中输入内容并点击提交,并且索引#index再次加载但这次尝试显示结果时,我得到:

app[web.1]: Completed 500 Internal Server Error in 440ms
app[web.1]: 
app[web.1]: ActionView::Template::Error ( isn't precompiled):
app[web.1]:     12:         - @results.each do |result|
app[web.1]:     13:           %li
app[web.1]:     14:             %div
app[web.1]:     15:               = image_tag result.image
app[web.1]:     16:             %div
app[web.1]:     17:               = result.title
app[web.1]:     18:             %div
app[web.1]:   app/views/index/index.html.haml:15:in `block in _app_views_index_index_html_haml___4350601325072829986_32734540'
app[web.1]:   app/views/index/index.html.haml:12:in   _app_views_index_index_html_haml___4350601325072829986_32734540'
Run Code Online (Sandbox Code Playgroud)

关于我的具体案例和我见过的其他人有什么奇怪的是以下几行:

ActionView::Template::Error ( isn't precompiled):
Run Code Online (Sandbox Code Playgroud)

对于我所见过的所有其他问题,括号中有一个css文件,即("foo.css"未预编译),或者在我看来它应该是("index.css")没有预编译).但这里只是空白!

这是我试图开始工作的暂存部署,所以我尝试运行RAILS_ENV =暂存rake资产:precompile(然后提交结果),但这并没有解决它.我甚至尝试在视图中删除(注意那里没有任何实际的样式).什么都行不通,我很茫然.任何帮助将不胜感激.

作为参考,这是我的gemfile:

source 'https://rubygems.org'

gem 'rails', '3.2.6'
gem 'pg'
gem 'haml-rails'
gem 'mongoid'
gem 'sunspot_rails', '~> …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails heroku asset-pipeline

11
推荐指数
1
解决办法
7746
查看次数

JRuby + Warbler:只要需要bson gem,jar文件就会爆炸

我想我可能在Warbler中发现了一个错误,但我想在这里发布这个问题以防万一我做错了.简而言之,任何尝试将需要"bson"gem的jruby应用程序打包到带有warbler的.jar文件中的尝试都会失败.这是我每次都得到的错误:

LoadError: no such file to load -- jar:file:/Users/jstokes/Local/Repositories/wartest/wartest.jar!/gems/bson-1.8.0-java/lib/../ext/java/jar/mongo-2.6.5 ...
Run Code Online (Sandbox Code Playgroud)

这是在OS X或Linux上重现问题的一组非常简单的步骤:

制作一个'wartest'目录并插入其中

使用bundler,创建一个名为'wartest'的新jruby-1.6.7.2 gemset.那么'rvm使用jruby-1.6.7.2@wartest'

安装warbler和bundler:

jruby --1.9 -S gem install warbler
jruby --1.9 -S gem install bundler
Run Code Online (Sandbox Code Playgroud)

只是为了确认它的工作原理:

which warble
#=> /Users/jstokes/.rvm/gems/jruby-1.6.7.2@wartest/bin/warble
Run Code Online (Sandbox Code Playgroud)

现在创建以下两行Gemfile:

#Gemfile
source 'http://rubygems.org'
gem 'bson'
Run Code Online (Sandbox Code Playgroud)

现在'捆绑安装'

现在创建一个bin目录并创建文件bin/main.rb.然后粘贴以下内容:

#bin/main.rb
require 'bson'
puts 'It worked!'
Run Code Online (Sandbox Code Playgroud)

此时,我们已准备好创建jar文件.那样做

jruby --1.9 -S warble jar
#=> rm -f wartest.jar
#=> Creating wartest.jar
Run Code Online (Sandbox Code Playgroud)

现在是时候了:

java -jar wartest.jar
#=> It worked!
Run Code Online (Sandbox Code Playgroud)

所以有什么问题?问题是,如果你换到另一个gemset,或者使用系统ruby,它会爆炸.注意:

rvm use system
#=> Now using system ruby.
java -jar wartest.jar
Run Code Online (Sandbox Code Playgroud)
LoadError: …

gem jruby warbler bson

6
推荐指数
0
解决办法
537
查看次数

Gemfile导致扭矩盒env变量变空

我想我发现了一个有关扭矩盒的错误.出于某种原因,如果我"宝石安装扭矩盒"然后在我的Gemfile中添加"宝石'扭矩盒'"线,"torquebox env"就会停止正常工作.这很容易重现,所以如果有人知道发生了什么,请告诉我:

要重现该错误,让我们创建一个新的gemset并安装torquebox-server

$ rvm use jruby-1.6.7.2
$ rvm gemset create test
$ mkdir torquetest
$ cd torquetest
$ rvm use jruby-1.6.7.2@test
Run Code Online (Sandbox Code Playgroud)

让我暂停一下,告诉你我的jruby-1.6.7.2@global中的内容,如果重要的话:

$ ls ~/.rvm/gems/jruby-1.6.7.2@global/gems 
total 0
drwxr-xr-x   9 jstokes   306 Aug  9 16:26 ./
drwxr-xr-x   7 jstokes   238 Aug  9 16:25 ../
drwxr-xr-x   5 jstokes   170 Aug  9 16:25 bouncy-castle-java-1.5.0146.1/
drwxr-xr-x  15 jstokes   510 Aug  9 16:26 bundler-1.1.5/
drwxr-xr-x  34 jstokes  1156 Aug  9 16:25 jruby-launcher-1.0.15-java/
drwxr-xr-x  10 jstokes   340 Aug  9 16:25 jruby-openssl-0.7.7/
drwxr-xr-x  13 jstokes   442 …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails jruby jrubyonrails torquebox

4
推荐指数
1
解决办法
691
查看次数