小编ald*_*n.h的帖子

如何在Vagrant中自动选择桥接网络接口?

我应该在Vagrant文​​件中添加什么以防止询问(在vagrant up命令之后)

网络应该连接哪个接口?

Available bridged network interfaces:
1) Intel(R) 82579LM Gigabit Network Connection
2) VMware Virtual Ethernet Adapter for VMnet1
3) VMware Virtual Ethernet Adapter for VMnet8
Run Code Online (Sandbox Code Playgroud)

我想选择#1选项.当前我需要手动输入"1".请帮忙!

vagrant vagrantfile vagrant-windows

27
推荐指数
3
解决办法
2万
查看次数

GraphQL::Client::DynamicQueryError 预期定义分配给静态常量

如何在 Rails 中制作正确的ShopifyAPI::GraphQL方法。

尝试下面的代码rails console工作正常。但是当我尝试将该代码放入 Rails 控制器/模型中并创建一个方法时,我得到:

GraphQL::Client::DynamicQueryError Expected definition to be assigned to a static constant

shopify_client
client = ShopifyAPI::GraphQL.new

SHOP_NAME_QUERY = client.parse <<-'GRAPHQL'
 {
  shop {
   name
  }
 }
GRAPHQL

result = client.query(SHOP_NAME_QUERY)
Run Code Online (Sandbox Code Playgroud)

我试图玩弄variables 以下https://github.com/github/graphql-client/blob/master/guides/dynamic-query-error.md 但没有成功

如何使用上述函数创建一个不会返回上述错误的方法。

示例模型方法

def trial
  shopify_client
  client = ShopifyAPI::GraphQL.new
  shop_query = client.parse <<-'GRAPHQL'
    {
     shop {
      name
     }
    }
  GRAPHQL

  client.query(shop_query)
end
Run Code Online (Sandbox Code Playgroud)

Gemfile 中gem 'shopify_api', git: 'https://github.com/Shopify/shopify_api', branch: 'graphql-support'

ruby ruby-on-rails graphql shopify-app

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

如何在 Rails 中的 activejob (adapter=resque) 中执行操作时获取作业 ID

我可以从 before_enqueue 方法获取作业 ID,例如

before_enqueue do |job|
  puts "Before Enqueu JOB ID: #{job.job_id}"
end
Run Code Online (Sandbox Code Playgroud)

但我也想在执行方法中得到它请帮助!

resque redis rails-activejob

5
推荐指数
0
解决办法
2740
查看次数

如何将递归/嵌套的 OpenStruct 对象转换为哈希

我有一个 OpenStruct 对象,需要转换为 JSON 数据。

样本哈希(来自 RSPEC 助手):

def test_order
 {
   "id": 505311428702,
   "email": "test@gmail.com",
   "closed_at": "",
   "discount_codes": {
      "id": 507328175,
      "text": "test"
   }
 }
end
Run Code Online (Sandbox Code Playgroud)

我正在使用以下函数进行递归:

def to_recursive_ostruct(hash)
  OpenStruct.new(hash.each_with_object({}) do |(key, val), memo|
    memo[key] = val.is_a?(Hash) ? to_recursive_ostruct(val) : val
  end)
end
Run Code Online (Sandbox Code Playgroud)

对于前 to_recursive_ostruct(test_order),将返回:

<OpenStruct id=505311428702, email="test@gmail.com", closed_at="", ...>
Run Code Online (Sandbox Code Playgroud)

转换后,使用OpenStructObject.marshal_dump

{
:id=>505311428702, :email=>"test@gmail.com", :closed_at=>"", 

discount_codes=>#<OpenStruct id=507328175, text= "test">}
}
Run Code Online (Sandbox Code Playgroud)

OpenStructObject.marshal_dump在第一级给了我正确的数据,

我还希望转换嵌套数据。

我真正需要的是:

{:id=>505311428702, :email=>"test@gmail.com", :closed_at=>"", :discount_codes=>{:id=>507328175, :text=> "test"} }
Run Code Online (Sandbox Code Playgroud)

请帮忙,提前致谢。

ruby json ruby-on-rails openstruct

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

Bugsnag 错误 UnhandledRejection - 拒绝原因不是错误

我们在生产中的 Rails 应用程序突然收到此拒绝错误

errorClass: UnhandledRejection
errorMessage: Rejection reason was not an Error. See "Promise" tab for more detail.
severity: error

unknown file · unknown method
Run Code Online (Sandbox Code Playgroud)

没有多少日志来调试导致此问题的原因。

我们目前正在使用 bugsnag.js.min version 6.1.0

最新版本修复了6.5.0吗?或者我们的 Rails 应用程序方面需要任何修复?

javascript ruby-on-rails bugsnag

5
推荐指数
0
解决办法
493
查看次数

如何在 RSPEC 中存根 Mailer 交付

我想存根发送电子邮件并返回示例电子邮件结果以供进一步处理。

鉴于我有:

message = GenericMailer.send_notification(id).deliver!
Run Code Online (Sandbox Code Playgroud)

我想做类似的事情:

allow(GenericMailer).to receive_message_chain(:send_notification, :deliver)
   .and_return(mail_result_no_idea_what_is_like)
Run Code Online (Sandbox Code Playgroud)

但是上面的功能明显失效了,GenericMailer does not implement: deliver还是deliver!试过。

我想返回一些数据,因为我需要测试类似(和更多)的东西:

message.header.select{|h| h.name == "Date"}.try(:first).try(:value).try(:to_datetime).try(:utc)
Run Code Online (Sandbox Code Playgroud)

rspec ruby-on-rails actionmailer

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

如何在RSPEC中运行所有功能测试(包括子文件夹)?

我有类似的嵌套目录:

spec/features/
??? login.rb
??? users
    ??? user_create.rb
    ??? user_edit.rb
    ??? user_index.rb
Run Code Online (Sandbox Code Playgroud)

using 命令 bundle exec rspec spec/features/login.rb 将运行登录测试。

我想运行所有测试,包括用户文件夹中的测试。

就像是, bundle exec rspec spec/features/*.rb

我只想运行所有功能测试。

请帮忙!

rspec ruby-on-rails-4

3
推荐指数
1
解决办法
715
查看次数

邪恶的PDF无法处理分页符

我在生成报告的Rails应用程序中使用gem wiked_pdf

但是当超过1页时,我无法解决数据中断问题。

请看图片。在此处输入图片说明

我尝试了很多时间来调整边距或间距,但仍然无法解决。

respond_to do |format|
  format.html
  format.pdf do
    render title:         @report_title,
           pdf:           @report_title,
           template:      'applicants/generate_report.pdf.erb',
           encoding:      'UTF-8',
           orientation:   'Landscape',
           layout:        'pdf_template.html',               
           footer: {
                    center:    '[page] of [topage]',
                    right:     "",
                    font_name: 'Arial',
                    font_size: 8                        
                   },
           margin: {
                    top:     10, # default 10 (mm)
                    bottom:  12,
                    left:    7,
                    right:   7 
                   },
          spacing: 0
  end
end
Run Code Online (Sandbox Code Playgroud)

我也尝试应用CSS,例如:

@media print {
  td, tr {page-break-inside: avoid; }
  table.full_report_table>tbody>tr>td {page-break-inside: avoid !important; }
}
Run Code Online (Sandbox Code Playgroud)

没用!

请帮忙!

ruby-on-rails wicked-pdf ruby-on-rails-4

3
推荐指数
1
解决办法
2434
查看次数

如何在 minitest-rails selenium 测试中最大化浏览器?

我正在做带有功能测试的minitest-rails

我注意到浏览器(我使用的是 chrome)不是全宽的

我在哪里或如何在我的配置文件中设置它?

目前我已经安装了以下宝石

  selenium-webdriver (2.53.4)
  chromedriver-helper (1.0.0)
  capybara (2.8.1, 2.7.1)
  capybara-screenshot (1.0.13)
  minitest-capybara (0.8.2)
  minitest-rails-capybara (2.1.2)
Run Code Online (Sandbox Code Playgroud)

请帮忙!

selenium ruby-on-rails minitest

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

如何使用 RSpec 测试 Sidekiq Worker?

我正在使用 RSPEC 进行测试,并使用 Sidekiq 进行后台作业。

因为 rspec 中没有生成器workers,所以不知道该使用什么。

https://relishapp.com/rspec/rspec-rails/docs/generators

require 'spec_helper'

RSpec.describe TestWorker, type: ? do # ex. :worker :sidekiq ...
  describe "TestWorker" do
    it "" do
     ....
    end
  end
end
Run Code Online (Sandbox Code Playgroud)

bundle exec rspec spec/workers/test_worker_spec.rb

如下所示,我得到:uninitialized constant TestWorker require 'spec_helper'

describe TestWorker do
  it "" do
   ....
  end
end
Run Code Online (Sandbox Code Playgroud)

正如我所尝试的,gem rspec-sidekiq https://github.com/philostler/rspec-sidekiq

有人可以提供一个用于app/workers/在 Rspec 中进行测试的示例模板吗?

谢谢。

rspec ruby-on-rails rspec-rails sidekiq rspec-sidekiq

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