2016-09-19 6 views
0

После обновления до Mongoid 5 я получаю эту ошибку: NoMethodError: неопределенный метод` []' для #Mongoid 5 скоплений: NoMethodError: неопределенный метод `[] 'для Aggregation

код выглядит следующим образом:

result = ::Presentation::Interaction.collection.aggregate(
    [ 
    user_match_criterias_live(conference), 
    ::Presentation::ReportGenerator::DELCOUNTRY_AGGREGATION 
    ] 
) 
return 0 if (result.count < 1) 
return result[0]["total"] 

Таким образом, агрегат уже использует массив в качестве аргумента.

ответ

0

После проверки того, что содержит результат, я понял, что он не отвечает на []. Тем не менее, он реагирует на .Первый

Код будет выглядеть

result = ::Presentation::Interaction.collection.aggregate(
    [ 
    user_match_criterias_live(conference), 
    ::Presentation::ReportGenerator::DELCOUNTRY_AGGREGATION 
    ] 
) 
return 0 if (result.count < 1) 
return result.first["total"]