【问题标题】:Rails:Limiting how many files a user can uploadRails:限制用户可以上传的文件数量
【发布时间】:2019-10-29 15:08:27
【问题描述】:

用户可以使用活动存储在我的 rails 应用中为他们的帖子上传多张图片,是否可以准确限制他们可以在表单中上传的照片数量?我想将其限制为每个用户 4 张图片。

<%= f.file_field :images, multiple: true, required: false  %>

【问题讨论】:

    标签: ruby-on-rails twitter-bootstrap rails-activestorage


    【解决方案1】:

    您可以编写自定义验证。将以下代码添加到相关模型中。

    validate :validate_images
    
    private
    def validate_images
      return if images.count <= 4
    
      errors.add(:images, 'You can upload max 4 images')
    end
    

    您还可以检查客户端的限制。以下代码来自这个answer

    $(function(){
      $("input[type='submit']").click(function(){
        var fileUpload = $("input[type='file']");
        if(parseInt(fileUpload.get(0).files.length) > 4) {
          alert('You can upload max 4 images');
        }
      });    
    });​
    

    【讨论】:

    • 我收到此错误“未定义的方法`图像?”对于 #<0x00007fc18e433990>
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-19
    • 2020-04-03
    • 1970-01-01
    • 1970-01-01
    • 2011-01-13
    • 1970-01-01
    相关资源
    最近更新 更多