小编fri*_*bob的帖子

从 Rails 服务器上传文件到 S3

我想从 Rails 应用程序将文件上传到 Amazon S3 存储桶。该文件来自上传它的用户。由于 aws-sdk 的不同版本,我很难为此找到合适的文档。此外,这acl: :public_read是故意的。我只希望授权用户上传,但任何人都应该能够访问它。

我目前的问题是我无法索引到延迟加载的集合中。谷歌没有提供关于如何不延迟加载的有用信息。

这是我的相关代码。请注意,控制器操作newshow现在是空的。

消息控制器.rb

  def create
    # Creates the file object
    obj = $S3.bucket(TEST_BUCKET).objects[params[:file].original_filename]

    # Uploads the file
    obj.write(
       file: params[:file],
       acl: :public_read
    )
  end
Run Code Online (Sandbox Code Playgroud)

新的.html.erb

<h1>Upload a file</h1>

<%= form_tag messages_path, enctype: 'multipart/form-data' do %>
  <%= file_field_tag :file  %>
  <%= submit_tag 'Upload file' %>
<% end %>
Run Code Online (Sandbox Code Playgroud)

我正在使用宁静的路线,所以唯一相关的路线信息是 resources :messages

我正在运行 rails 6.0.0beta,这并不重要。我正在使用 aws-sdk gem 的第 3 版。

ruby-on-rails amazon-s3 amazon-web-services aws-sdk

5
推荐指数
1
解决办法
3067
查看次数

汇编中的无符号整数

全新的汇编需要一些无符号算术的帮助。从 C 程序转换是什么意思。

使用:

Linux

国家安全管理协会

x86(32 位)

我想从用户那里读入一个数字。我希望这个数字是无符号的。当我输入一个高于有符号整数限制的数字并使用信息寄存器时,我注意到我的寄存器存储为负数,这意味着发生了溢出。(显然输入的数字低于 max unsigned int)我如何将此寄存器视为无符号,以便我可以根据结果进行比较和跳转?

c x86 assembly unsigned-integer

4
推荐指数
1
解决办法
8027
查看次数