使用Ruby on Rails的Carrierwave进行图像上传

3

我正在尝试使用carrierwave上传图像。一切似乎都正确,但我不断收到一个错误提示:

Can't resolve image into URL: undefined method `to_model' for #<PortfolioUploader:0x007f35a5cad3c0>  
Did you mean?  to_xml  

1
如果您发布导致问题的实际代码,那么这将有助于我们帮助您。如果您告诉我们您尝试调试问题的方法,那么这也会对我们有所帮助。以下是一篇不错的文章,可以帮助您入门:https://codeblog.jonskeet.uk/2010/08/29/writing-the-perfect-question/. - R. Peereboom
1个回答

13

在Rails 5.2 ActiveStorage中使用CarrierWave可能会出现一些问题。 您可以尝试更改传统的image_tag

假设您正在使用类似于以下内容:

<%= image_tag(@user.image) %>

将它改为这样,使用.url

<%= image_tag(@user.image.url) %>

非常感谢,问题出在没有添加 .url。 - Sujal Paudel
很棒,它解决了你的问题!如果我的回答有帮助,请标记为已接受。问候。 - Hipjea
是的,它有所帮助。我想知道如果ActiveStorage被禁用,为什么我还需要这样做。我已经在application.rb中将其注释掉了。 - sekrett
@Hipjea .to_s 部分不是必要的,你可以将其删除。 - sekrett

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接