我正在开发一个rails项目。我目前正在设置电子邮件功能,正在测试它。我正在使用letter opener,haml,并使用Mailchimp的email templates之一。
我目前正在使用image_tag链接到我想要显示的图片。
当这样写的时候;
= image_tag 'my_image.png', id: 'headerImage', :style => "max-width:600px;", "mc:allowdesigner" => "", "mc:allowtext" => "", "mc:edit" => "header_image", "mc:label" => "header_image", :alt => 'alt text'
我在html中获得了破碎的图像。当这样写的时候;
= image_tag 'my_image', id: 'headerImage', :style => "max-width:600px;", "mc:allowdesigner" => "", "mc:allowtext" => "", "mc:edit" => "header_image", "mc:label" => "header_image", :alt => 'alt text'
我得到了
Asset was not declared to be precompiled in production.
Add Rails.application.config.assets.precompile += %w( my_image ) to config/initializers/assets.rb and restart your server
我的assets.rb看起来像这样;
Rails.application.config.assets.precompile += %w( my_image )
我重新启动了服务器。我也尝试使用相对路径手动链接图像,似乎没有任何工作。我还跑了RAILS_ENV=development rake assets:precompile
但仍然没有。
之前我没有遇到过这个问题,但看起来rails似乎不想显示这个图像。也许它与letter_opener
有关?
如果其他人遇到过这个奇怪的问题而且知道该怎么做,或者他们如何解决这个问题,那么任何帮助都会受到赞赏。
答案 0 :(得分:0)
最新版本的sprockets存在一个问题,它一直给开发人员带来这个问题。尝试降级sprokets-rails
宝石。将其放入Gemfile
:
gem 'sprockets-rails', '2.3.3'
然后执行bundle update sprockets-rails
。