【问题标题】:carrierwave extension_white_list not working载波扩展_白名单不起作用
【发布时间】:2013-09-27 06:18:07
【问题描述】:

这是一个类似的情况,但没有解决方案CarrierWave extension_white_list doesn't seem to work Carrierwave 提供了一个功能extension_white_list,旨在防止用户上传无效文件。我已取消注释此功能,但我该如何处理这种情况?我想捕捉这个错误并通知用户他应该更改文件。

此 wiki 条目似乎相关,但我不确定如何继续 https://github.com/carrierwaveuploader/carrierwave/wiki/How-to%3A-Validate-uploads-with-Active-Record

【问题讨论】:

    标签: ruby-on-rails validation carrierwave


    【解决方案1】:

    根据这个问题https://github.com/carrierwaveuploader/carrierwave/issues/1896

    解决方案是这样的,它对我有用;

    改变:

    def extension_white_list
    end
    

    到:

    def extension_whitelist
    end
    

    所以他们已经从白名单单词中删除了下划线。

    【讨论】:

    • 我不敢相信他们没有创建别名就做到了。对于几乎每个 Rails 应用程序来说,这都是一个安全漏洞。感谢@"Shuaib Zahda" 提供此信息,非常有用!
    【解决方案2】:

    在您的模型中,validates_integrity_of :avatar 将导致白名单违规行为与保存时带有空白字段的validates_presence_of :another_field 非常相似,即save 将返回 false,之后valid? 将返回 false,并且会有一个user.errors[:avatar] 中提供了相关的错误消息。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-11-06
      • 1970-01-01
      • 2013-03-30
      • 2015-04-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-08-03
      相关资源
      最近更新 更多