Rails 5.2.4.3: 我在访问assets时出现了错误,包括。无法将图片解析为URL:未定义nil:NilClass的`+'方法。

问题描述 投票:0回答:1

我有一个Rails 5.2.4.3的应用,直到昨天早上才运行良好。我做了一个小的文本更改,并试图在没有测试的情况下将更改上传到Heroku。不要这样做。资产没有编译。当我执行this is localhost时,我得到了以下错误。

ActionView::Template::Error (Can't resolve image into URL: undefined method `+' for nil:NilClass):
    2:  <p class="text-center text-cat"><%= "#{t :home01}" %><br><%= "#{t :home02}#{t :space}:" %></p>
    3:  <div class="row">
    4:      <div class="col-12 col-sm-8 offset-sm-2 col-md-6 offset-md-3 col-lg-6 offset-lg-3 col-xl-6 offset-xl-3" align="center">
    5:          <p class="py-2"><%= link_to image_tag("youtubevideo.jpg", class: "img-fluid", alt: "#{t :about_us}"), "https://www.youtube.com/watch?v=PrAcKje2MS0", target: "_blank" %></p>
    6:      </div>
    7:  </div>
    8:  <p class="text-center text-cat"><%= "#{t :home03} #{t :home04}" %></p>

app/views/pages/home.html.erb:5:in `_app_views_pages_home_html_erb__2887808543043751872_20140'
Started GET "/" for ::1 at 2020-06-05 11:05:33 -0500
Processing by PagesController#home as HTML
  Rendering pages/home.html.erb within layouts/application
  Rendered pages/home.html.erb within layouts/application (5055.4ms)
Completed 500 Internal Server Error in 5208ms (ActiveRecord: 0.0ms)

我没有找到太多关于这个错误的信息,其中不包括我在我的应用程序中没有使用的宝石或使用早期版本的Rails。这是唯一的 一个 我找到了,但解决方法没有用。这是我预编译资产时得到的错误。

rails aborted!
NoMethodError: undefined method `+' for nil:NilClass

我想我会重新命名这个视图上的图像,然后尝试运行我的应用程序。我在我的样式表上得到了同样的错误。

ActionView::Template::Error (undefined method `+' for nil:NilClass):
    15:       <meta content="IE=edge,chrome=1" http-equiv="X-UA-Compatible">
    16:       <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=0">
    17:         <meta name="wot-verification" content="3402293318de5ef4db02"/>
    18:       <%= stylesheet_link_tag    "application", media: "all" %>
    19:       <%= csrf_meta_tags %>
    20:         <%= favicon_link_tag "/favicon.ico" %>
    21:       <%= render 'layouts/shim' %>

app/views/layouts/application.html.erb:18:in `_app_views_layouts_application_html_erb___3180930056003916447_19580'

我在做修改之前,从备份中替换了我的assets文件夹和视图,但我仍然得到这个错误。

我查看了我电脑上assets文件夹的安全性,看起来没有问题。

还有什么原因会导致这个错误?

ruby-on-rails ruby-on-rails-5 assets
1个回答
0
投票

我重新命名了我的所有图像,并在其他资产文件夹中从头开始重新创建新文件。我的应用程序可以正常工作。

我仍然不知道为什么Rails会时不时地停止找不到assets文件。重命名它通常可以解决这个问题。这是我的assets文件夹中的每个文件第一次出现这种情况。

© www.soinside.com 2019 - 2024. All rights reserved.