我想创建数十个依赖于此数组中的数据的登录名,登录名:
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
}
]
Run Code Online (Sandbox Code Playgroud)
有什么更好的方法来编写这个数组而不是将哈希复制和粘贴几十次?我熟悉 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
Run Code Online (Sandbox Code Playgroud) 我想在两个变量中保存一个数组的值,不包括第一个和最后一个元素.
例如:
prices = [9, 3, 5, 2, 1]
Run Code Online (Sandbox Code Playgroud)
我需要的元素是:
prices_excl_first = [3, 5, 2, 1]
prices_excl_last = [9, 3, 5, 2]
Run Code Online (Sandbox Code Playgroud)
我想通过几种方法从数组中删除元素,包括通过将其索引传递给切片方法来切除值,如下所示:
first_price = prices.slice(0)
last_price = prices.slice(-1)
Run Code Online (Sandbox Code Playgroud)
然后我们可以将修改后的数组保存到变量中:
array_except_first_price = prices.delete(first_price) #=> [3, 5, 2, 1]
array_except_last_index = prices.delete(last_price) #=> [3, 5, 2]
Run Code Online (Sandbox Code Playgroud)
这有两个问题:
prices后基本上,如何在问题中必要时暂时修改数组中的元素?
从数组中切片和删除元素会永久影响数组.