Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby 为什么登录Rails应用程序后我的徽标无法加载?_Ruby_Image_Ruby On Rails 5 - Fatal编程技术网

Ruby 为什么登录Rails应用程序后我的徽标无法加载?

Ruby 为什么登录Rails应用程序后我的徽标无法加载?,ruby,image,ruby-on-rails-5,Ruby,Image,Ruby On Rails 5,我的徽标将本地加载到我的RoR应用程序中。但是,当我登录时,每次都无法加载。但是,如果我重定向到同一个页面,它将再次加载。我不确定我是否理解问题所在 可以在此处找到指向我的项目的链接。无法加载徽标,因为在以用户身份成功登录后,您的路径正在更改。会话控制器将用户重定向到/users/:user\u id 标记中受影响的src属性包含logo.png,因此浏览器尝试获取/users/logo.png,但不会成功 您有两个选择: 1将您的徽标更改为资产。这是资源的常用模式,例如,当您更改徽标时,这对以

我的徽标将本地加载到我的RoR应用程序中。但是,当我登录时,每次都无法加载。但是,如果我重定向到同一个页面,它将再次加载。我不确定我是否理解问题所在


可以在此处找到指向我的项目的链接。

无法加载徽标,因为在以用户身份成功登录后,您的路径正在更改。会话控制器将用户重定向到/users/:user\u id

标记中受影响的src属性包含logo.png,因此浏览器尝试获取/users/logo.png,但不会成功

您有两个选择:

1将您的徽标更改为资产。这是资源的常用模式,例如,当您更改徽标时,这对以后的部署有很大帮助。将logo.png移动到app/assets/images,并在“使用图像标签”帮助程序中:

这样,您将始终获得logo/assets/logo.png的绝对路径,而不必担心用户实际在哪里

2将标签中的路径更改为logo/logo.png的绝对路径,它将尝试获取正确的文件

2解决方案会更简单,但我强烈建议您联系Rails,因为它在处理网页静态资产方面确实有很大帮助


此外,如果遇到未加载资源,请始终检查浏览器的控制台。在GoogleChrome中,只需按F12键并切换到Console选项卡,就会出现一条红色错误消息,说明无法加载哪些资源以及原因。显示的完整URL通常有助于解决这些棘手的问题。

您需要将图像放在assets/images文件夹下

<%= image_tag ("/assets/ruby.jpeg") %>
在config/environments/development.rb中将assets compile更改为true默认值
config.assets.compile=true

惊人的解释。谢谢
<%= image_tag ("/assets/ruby.jpeg") %>