回形针不保存文件和附件

Paperclip not saving file and attachment

这是我的申请:https://github.com/MagdalenaL/harcerki 我对回形针有疑问。它不会将任何文件和附件保存到数据库。我阅读了有关该主题的所有帖子,但 none 帮助了我。我将不胜感激。

我相信你在谈论 products.rb 中的头像。

您在相关控制器强参数中缺少头像:

params.require(:product).permit(:avatar, :name, :number, :image, :availability, :prize, :status, :edition)

编辑:我已经更详细地阅读了您的代码,您对 MVC 模型有些不了解。

你应该只在你的模型中放入你拥有的 fields/attributes 列表(出于这个原因我不喜欢 ActiveRecord,因为这些字段在你的数据库模式中 "hidden",不像 Mongoid)

控制器是连接视图(HTML 用户看到的)和模型的东西。因为用户可以随时修改他的浏览器发送的 POST 请求,所以 Rails 4 "strong parameters" 已成为默认选项。基本上,您必须明确地告诉您的应用程序允许哪些表单参数,因此恶意用户不能,例如,为他的用户将 :superadmin 列设置为 true。

因此,像

这样的行
def product_params
params.require(:product).permit(:avatar)
end

在你的模型中完全没有意义。它们应该只在您的控制器中。

params是包含用户发送的POST参数的变量名。