Replies (4)

  • @kb, to regret nothing?(:
  • @kb, ну вот с тем, как он обрабатывает длинные цепочки ключей и вводит Null-value он не прав. есть XPath, есть JSON Pointer — две спецификации, которые для простых случаев, а именно key direct hit имеют одинаковый синтаксис запросов. Отсюда получаем:

    path = '/foo/bar/baz/0/boooo'
    value = extract(db, path, default=SENTINEL)
    if value is SENTINEL:
    raise LookupError(path)

    а extract уже там передает этот путь нужному резолверу.
  • @Kxepal, хмм, ну не знаю, разные случаи бывают. особенно плохо это когда выборку по значению переменной надо делать (динамически), строку городить с эскейпингами как-то не очень было бы. ну и вообще оверхед на парсинг и проч.
  • @kb, тут как бы есть спеки и уже готовые реализации, так что не нужно изобретать велосипед, я про это(: