我试图在Laravel 5.3中附加一个Eloquent系列和另一个Eloquent系列。
这是我到目前为止所做的:
$entries = Entry::all();
$posts = Post::all();
$entries->merge($posts);
我尝试像上面的代码一样使用merge()
,但似乎我遇到了这种问题(因为其中一些问题具有相同的id
相同):
Collection merge eating up some rows
有什么想法吗?
答案 0 :(得分:14)
答案 1 :(得分:1)
我相信您可能正在寻找import requests
body ={
'draw':4,
'columns[0][data]':'Details.Symbol',
#'columns[0][name]' : '',
'columns[0][searchable]': True,
'columns[0][orderable]': True,
#'columns[0][search][value]' : '',
'columns[0][search][regex]':False,
'columns[1][data]':'Details.CompanyName',
#'columns[1][name]' : '',
'columns[1][searchable]': True,
'columns[1][orderable]':True,
#'columns[1][search][value]' : '',
'columns[1][search][regex]':False,
'columns[2][data]':'Details.EarnDate',
#'columns[2][name]' : '',
'columns[2][searchable]':True,
'columns[2][orderable]': True,
#'columns[2][search][value]':'',
'columns[2][search][regex]':False,
'columns[3][data]':'Details.TimeOfDayValue',
'columns[3][name]':'TimeOfDayValue',
'columns[3][searchable]':True,
'columns[3][orderable]':True,
'columns[3][search][value]': '0 to 1', #
'columns[3][search][regex]':False,
'columns[4][data]':'Details.ReportedPRValue',
#'columns[4][name]' : '',
'columns[4][searchable]': True,
'columns[4][orderable]':True,
#'columns[4][search][value]' :'',
'columns[4][search][regex]': False,
'columns[5][data]':'Details.ConfCallStr',
#'columns[5][name]' : '',
'columns[5][searchable]': True,
'columns[5][orderable]':True,
#'columns[5][search][value]': '',
'columns[5][search][regex]': False,
'columns[6][data]':'Details.PrevEarnEffectValue',
#'columns[6][name]' : '',
'columns[6][searchable]': True,
'columns[6][orderable]':True,
#'columns[6][search][value]': '',
'columns[6][search][regex]':False,
'columns[7][data]':'Details.IVStraddleValue',
#'columns[7][name]' : '',
'columns[7][searchable]': True,
'columns[7][orderable]':True,
#'columns[7][search][value]': '',
'columns[7][search][regex]':False,
'columns[8][data]':'Details.ThisEarnEffectValue',
#'columns[8][name]' : '',
'columns[8][searchable]': True,
'columns[8][orderable]':True,
# 'columns[8][search][value]': '',
'columns[8][search][regex]':False,
'columns[9][data]':'Details.OptVolumeTotal',
#'columns[9][name]' : '',
'columns[9][searchable]': True,
'columns[9][orderable]':True,
# 'columns[9][search][value]': '',
'columns[9][search][regex]':False,
'columns[10][data]':'Details.MarketCapTotal',
#'columns[10][name]' : '',
'columns[10][searchable]': True,
'columns[10][orderable]':True,
# 'columns[10][search][value]' : '',
'columns[10][search][regex]':False,
'columns[11][data]':'Details.AvgOptVolume',
'columns[11][name]':'AvgOptVolume',
'columns[11][searchable]': True,
'columns[11][orderable]': True,
# 'columns[11][search][value]' : '',
'columns[11][search][regex]' : False,
'columns[12][data]':'Stats_Last4.AbsAvgMove',
'columns[12][name]':'Last4_AbsAvg',
'columns[12][searchable]':True,
'columns[12][orderable]':True,
# 'columns[12][search][value]' : '',
'columns[12][search][regex]':False,
'columns[13][data]':'Stats_Last4.AbsMinMove',
'columns[13][name]':'Last4_AbsMin',
'columns[13][searchable]':True,
'columns[13][orderable]':True,
# 'columns[13][search][value]': '',
'columns[13][search][regex]': False,
'columns[14][data]':'Stats_Last4.AbsMaxMove',
'columns[14][name]':'Last4_AbsMax',
'columns[14][searchable]':True,
'columns[14][orderable]':True,
# 'columns[14][search][value]' : '',
'columns[14][search][regex]': False,
'columns[15][data]':'Details.IVStraddleValue',
'columns[15][name]':'Last4_Expected',
'columns[15][searchable]':True,
'columns[15][orderable]':True,
# 'columns[15][search][value]': '',
'columns[15][search][regex]': False,
'columns[16][data]':'Stats_Last4.RelativeValue',
'columns[16][name]':'Last4_Relative',
'columns[16][searchable]':True,
'columns[16][orderable]':True,
# 'columns[16][search][value]': '',
'columns[16][search][regex]':False,
'columns[17][data]':'Stats_Last12.AbsAvgMove',
'columns[17][name]':'Last12_AbsAvg',
'columns[17][searchable]':True,
'columns[17][orderable]':True,
# 'columns[17][search][value]': '',
'columns[17][search][regex]': False,
'columns[18][data]':'Stats_Last12.AbsMinMove',
'columns[18][name]':'Last12_AbsMin',
'columns[18][searchable]': True,
'columns[18][orderable]':True,
# 'columns[18][search][value]': '',
'columns[18][search][regex]':False,
'columns[19][data]':'Stats_Last12.AbsMaxMove',
'columns[19][name]':'Last12_AbsMax',
'columns[19][searchable]':True,
'columns[19][orderable]':True,
# 'columns[19][search][value]': '',
'columns[19][search][regex]': False,
'columns[20][data]':'Details.IVStraddleValue',
'columns[20][name]':'Last12_Expected',
'columns[20][searchable]':True,
'columns[20][orderable]':True,
#'columns[20][search][value]': '',
'columns[20][search][regex]':False,
'columns[21][data]':'Stats_Last12.RelativeValue',
'columns[21][name]':'Last12_Relative',
'columns[21][searchable]':True,
'columns[21][orderable]':True,
#'columns[21][search][value]': '',
'columns[21][search][regex]': False,
'columns[22][data]':'Details.ConfirmationTypeMulti',
'columns[22][name]':'ConfirmationTypeMulti',
'columns[22][search][value]':'Announced',
'columns[22][searchable]':True,
'columns[22][orderable]':True,
#'columns[22][search][value]': '',
'columns[22][search][regex]':False,
'columns[23][data]':'Details.StockTypeMulti',
'columns[23][name]':'StockTypeMulti',
'columns[23][searchable]':True,
'columns[23][orderable]':True,
#'columns[23][search][value]':'',
'columns[23][search][regex]':False,
'columns[24][data]':'Details.HasOptions',
'columns[24][name]':'HasOptions',
'columns[24][searchable]':True,
'columns[24][orderable]': True,
'columns[24][search][value]':'',
'columns[24][search][regex]': False,
'columns[25][data]':'InWatchlist',
'columns[25][name]':'InWatchlist',
'columns[25][searchable]':True,
'columns[25][orderable]':True,
#'columns[25][search][value]':'',
'columns[25][search][regex]':False,
'columns[26][data]':'Details.CurrentStockPrice',
'columns[26][name]':'CurrentStockPrice',
'columns[26][searchable]':True,
'columns[26][orderable]':True,
'columns[26][search][regex]': False,
'order[0][column]':10,
'order[0][dir]':'desc',
'start':0,
'length': -1,
'search[value]':'',
'search[regex]':False}
with requests.Session() as s:
r = s.get('https://marketchameleon.com/Calendar/Earnings?d=20190712')
r = s.post('https://marketchameleon.com/Calendar/EarningsInnerData?d=20190712', data = body).json()
。不管哪个容器的键,它都会将一个容器附加到另一个容器的末尾。
concat()
答案 2 :(得分:0)
答案 3 :(得分:0)
如果您需要合并big_products和small_products:
$products = $bigProducts->values()->merge($smallProducts->values());
merge方法将给定的数组或集合与原始集合合并。如果给定项目中的字符串键与原始集合中的字符串键匹配,则给定项目的值将覆盖原始集合中的值。
但是
如果给定项目的键是数字键,则值将附加到集合的末尾:
因此,您所需要做的就是摆脱键,您可以使用->values()
函数来做到这一点。
在Laravel-6上测试
答案 4 :(得分:0)
以下是链接:laravel7.X
$collection = collect(['Desk', 'Chair']);
$merged = $collection->merge(['Bookcase', 'Door']);
$merged->all();