Своебразный вывод пустых значений ключей в group (18.12.2018)
Closed this issue · 7 comments
Вывод пустых значений для метода group устроен странно, вместо одной логики используется несколько. Видимо, работает так: пустые значения (типа "country": null) отбрасываются, если для других ключей есть непустые значения. Но если есть только пустые значения, то они выводятся явно.
Примеры:
- /accounts/group/?status=%D0%B2%D1%81%D1%91+%D1%81%D0%BB%D0%BE%D0%B6%D0%BD%D0%BE&limit=35&order=-1&query_id=600&birth=1997&keys=city%2Cstatus
{"status":"всё сложно","count":15},{"status":"всё сложно","count":2,"city":"Санктярск"},...
-- здесь нет city в первом элементе - /accounts/group/?status=%D0%B2%D1%81%D1%91+%D1%81%D0%BB%D0%BE%D0%B6%D0%BD%D0%BE&query_id=387&order=-1&limit=45&keys=country
{"groups":[{"country":null,"count":385},{"country":"Румляндия","count":67},...
-- а здесь есть
Может быть можно всегда требовать выводить null для пустых значений, или никогда не выводить? Или при валидации не учитывать null значения независимо от формы записи?
Логичнее не выводить
Аналогично:
expected: {:groups
[{:count 38, :sex "m"}
{:count 28, :sex "f"}
{:count 9, :sex "f", :country "Мализия"}
{:count 7, :sex "f", :country "Румляндия"}
Здесь пустые country удалены, в другом запросе country null
Сделайте, пожалуйста, в каком-то одном стиле -- либо оставлять, либо выводить. Но чтобы везде одинаково.
В test_accounts_251218.zip уже нигде нет null.
На странице https://highloadcup.ru/ru/round/3/task/3/ ссылка "Получить тестовые данные".
Сейчас она ведет на https://highloadcup.ru/media/condition/test_accounts_251218.zip (и меняется почти каждый день).