小编ino*_*tus的帖子

Ruby:使用 AWS 实例配置文件进行 S3 访问

我有一个附加了配置文件的 ec2 实例。我可以使用 awscli,它可以很好地上传到存储桶。

root@ocr-sa-test:/# aws s3 ls s3://company-ocr-east/
                           PRE 7_day_expiry/

root@ocr-sa-test:/# touch foo
root@ocr-sa-test:/# aws s3 cp foo s3://company-ocr-east/foo
upload: ./foo to s3://company-ocr-east/foo
root@ocr-sa-test:/# aws s3 rm s3://company-ocr-east/foo
delete: s3://company-ocr-east/foo
Run Code Online (Sandbox Code Playgroud)

不过,我无法让它与 ruby​​ 中的 aws-sdk 一起使用。我被拒绝访问。

irb(main):001:0> require "aws-sdk"
=> true
irb(main):002:0>
irb(main):003:0> credentials = Aws::InstanceProfileCredentials.new
irb(main):004:1* client = Aws::S3::Client.new(
irb(main):005:1*   region: "us-east-1",
irb(main):006:1*   credentials: credentials,
irb(main):007:0> )
irb(main):008:0>
irb(main):009:0>
irb(main):010:0>
irb(main):011:1* begin
irb(main):012:2*   client.put_object(
irb(main):013:2*     key: 'hello.txt',
irb(main):014:2*     body: 'Hello World!',
irb(main):015:2*     bucket: 'company-ocr-east',
irb(main):016:2*     content_type: 'text/plain'
irb(main):017:1*   ) …
Run Code Online (Sandbox Code Playgroud)

ruby aws-sdk-ruby

9
推荐指数
1
解决办法
483
查看次数

Rails 6 + Webpack、数据表、jQuery

我有一个使用以下代码的“全选”按钮:

<script type='text/javascript'>
  $('#check_all').on("click", function() {
    $('input[type="checkbox"]').click();
  });
</script>
Run Code Online (Sandbox Code Playgroud)

自从我升级到 Rails 6 + Webpacker 后,它就停止工作了。控制台显示此错误:

Uncaught ReferenceError: $ is not defined
Run Code Online (Sandbox Code Playgroud)

我设法通过更改来修复它environment.js

environment.plugins.append('Provide',
  new webpack.ProvidePlugin({
    $: 'jquery',
    jQuery: 'jquery',
    Popper: ['popper.js', 'default']
  })
)
Run Code Online (Sandbox Code Playgroud)

到:

environment.plugins.append('Provide',
  new webpack.ProvidePlugin({
    $: 'jquery/src/jquery',
    jQuery: 'jquery/src/jquery',
    Popper: ['popper.js', 'default']
  })
)
Run Code Online (Sandbox Code Playgroud)

但一旦修复了这个问题,数据表就会崩溃。

有什么想法如何让他们一起工作吗?谢谢!

jquery ruby-on-rails datatables webpack ruby-on-rails-6

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

如何从ActiveJob作业中使用url_for/polymorphic_url?

我有一个通知服务,我正在ActiveJob作业中调用(使用delayed_job后端).每个通知的主题是一个模型实例,可以是几个不同类中的任何一个.为了方便收件人,我需要包含指向该对象视图的链接.

这不起作用,因为url_for不是作业上下文中可用的方法:

class NotificationJob < ActiveJob::Base
  def perform(object, message)
    NotificationService.send(url_for(object), message)
  end
end
Run Code Online (Sandbox Code Playgroud)

在此代码的先前且更有限的版本中,我使用了Rails.application.routes.url_helpers.model_name_url(object),但这是特定于模型的.似乎Rails.application.routes.url_for需要控制器/动作规范,而不是模型.

在我可以使用的邮件中url_for(object),无论模型类是什么,它都是正确的.那么我如何在作业中访问多态url助手呢?

ruby-on-rails rails-activejob

2
推荐指数
2
解决办法
987
查看次数