【问题标题】:Active Record/Ruby on Rails -> Delete image by click on link: Set attachment columns to NULL viaActive Record/Ruby on Rails -> 单击链接删除图像:通过将附件列设置为 NULL
【发布时间】:2016-07-15 18:39:34
【问题描述】:

我不知道该怎么做。我有一张叫做“动物”的桌子。 然后我可以添加图像来显示动物。

我在表单视图中使用此语句来更改图像:

f.file_field :attachment, :accept => 'image/jpeg'

当我提交表单时,我在显示视图中看到了一张漂亮的图片。

就像我说的,我可以轻松更改图像,但我不知道如何删除它。在一个完美的世界中,我更喜欢,我点击一个链接,图像被删除,但其余的动物属性保持生命,所以以下列设置为 NULL 并且文件从服务器中删除:

“附件文件名” “附件内容类型” “附件文件大小” “attachment_update_at”(应该设置为当前日期,或者设置为NULL)

感谢任何帮助。

【问题讨论】:

  • 你在用回形针宝石吗?

标签: ruby-on-rails rails-activerecord delete-file link-to


【解决方案1】:

如果您使用的是回形针 gem,您只需将附件设置为 nil 并保存即可。像这样:

@animal.attachment = nil
@animal.save

更多信息here

在您的情况下,如果您想添加要删除的链接,您将创建一个路由和一个操作来执行此操作。

我建议在文件字段附近添加一个复选框并在更新/创建时验证它。

【讨论】:

  • 感谢您的回复。是的,我正在使用回形针 - 但我不知道我正在使用它 - 因为我接管了平台(如果你不是最初的程序员,总是很难)。现在回形针的提示很有帮助。由于这个原因,我发现另一个关于堆栈溢出的线程,该问题已被讨论并解决:stackoverflow.com/questions/4435826/…
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-10-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-05-08
  • 1970-01-01
  • 2019-01-27
相关资源
最近更新 更多