gpt4 book ai didi

ruby-on-rails - 如何在一个数组中多次重复单个散列?

转载 作者:行者123 更新时间:2023-12-05 08:42:02 25 4
gpt4 key购买 nike

我想创建几十个依赖于这个数组中的数据的登录名,登录名:

    logins = [
{
email: Faker::Internet.email,
password: "password",
first_name: Faker::Name.first_name,
last_name: Faker::Name.last_name
},
{
email: Faker::Internet.email,
password: "password",
first_name: Faker::Name.first_name,
last_name: Faker::Name.last_name
}
]

与多次复制和粘贴该散列相比,有什么更好的方式来编写此数组?我熟悉 x.times do 但这不适用于数组。

这是我在登录时传递的代码:

    logins.each do |login|
li = LoginInformation.new(login: login[:email], password: login[:password])
if UserManager.save(li)
company_ids.each do |id|
li.contacts.create(first_name: login[:first_name], last_name: login[:last_name], email_address: login[:email], company_id: id, is_employee: true)
end
end
end

最佳答案

简化 logins 数组创建的一种方法是将散列对象与包含的 Faker 方法作为一个 block 传递,如下所示:

logins = Array.new(10) { { email: Faker::Internet.email, password: 'password', first_name: Faker::Name.first_name, last_name: Faker::Name.last_name } }

您可以将此示例中的 10 替换为您的用例所需的元素数。

希望这对您有所帮助!

关于ruby-on-rails - 如何在一个数组中多次重复单个散列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45725636/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com