169 похожих чатов

Кто-Нибудь может подсказать, как мапу с листом внутри упаковать в

query params?


iex(98)> %{
...(98)> "callbackType" => "json",
...(98)> "customer_email" => "",
...(98)> "customer_phone" => "",
...(98)> "products" => [%{"name" => "name", "price" => "1234", "quantity" => "1"}],
...(98)> } |> Query.encode()
** (ArgumentError) cannot encode maps inside lists when the map has 0 or more than 1 element, got: %{"name" => "name", "price" => "1234", "quantity" => "1"}


Если в листе только один ключ - всё окей. Но надо именно так.
Проблема в том, что сначала эти параметры кодятся в Jason.encode, после чего подписываются ключом и ключ добавляется к этим параметрам.

Сейчас приходится параметры как выше сначала энкодить и подписывать, а потом в этих параметрах ключ products менять на:


Map.put(params, "products", %{"0": %{"name" => "name", "price" => "1234", "quantity" => "1"}})


и после этого в


URI.new!("http://asdf/") |> URI.append_query(Query.encode(params))


Что мне кажется максимально коряво.

4 ответов

41 просмотр

Есть либа, которая это упаковывает. Может @fried_zucchini подскажет

Lama Lover
Есть либа, которая это упаковывает. Может @fried_z...

если ты про ut, то она тоже такое не поддерживает, в рфц ничего про карты в списках не было

Fried Zucchini
если ты про ut, то она тоже такое не поддерживает,...

Не, есть другая либа, которая кверю кодирует

Lama Lover
Не, есть другая либа, которая кверю кодирует

мне кажется такое только form-style можно закодировать

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта