将工厂机器人返回的参数包装在另一个参数中

时间:2019-05-09 02:02:16

标签: ruby-on-rails factory-bot

我需要在rails中使用params.require(:business)来设置特定的参数,但是在让Factory Bot正确构建参数时遇到了问题。

我已经阅读了工厂机器人文档,但看不到能解决此问题的任何东西。谷歌搜索并没有真正提供很多。我可能会问使用不正确的词汇的问题。我是Rails的新手,它可能会被称为与我正在寻找的东西不同的东西,但是我的代码应该可以解释我的问题。

工厂:

FactoryBot.define do
  factory :business do
    description { Faker::Company.industry }
    name { Faker::Company.name }
    sequence(:email) { |n| "business#{n}@example.com" }
  end
end

工厂输出:

{:description=>"Restaurants", :name=>"Wuckert LLC", :email=>"business3@example.com"}

它提供正确的参数并通过测试,直到我将以下内容添加到控制器中为止:

params.require(:business)

我希望这样可以解决问题:

{:business => { :description=>"Restaurants", :name=>"Wuckert LLC", :email=>"business3@example.com"}}

如果有些不好的做法会阻止它甚至成为问题,我可以提出建议。

0 个答案:

没有答案