Size: a a a

2020 May 20

IK

Ilya Kaznacheev in Go-go!
Andrey Treyel
При использовании структуры ошибка все та же

До этого использовал
map[string]interface{}{
   "event_id": eventID,
}
Ну я хз, работает ли так, я использую структуры
Вопрос не в этом - вы используете NamedQuery, или обычный селект?
источник

AT

Andrey Treyel in Go-go!
NamedQueryContext
источник

IK

Ilya Kaznacheev in Go-go!
А что конкретно на pg приходит?
источник

IK

Ilya Kaznacheev in Go-go!
Andrey Treyel
При использовании структуры ошибка все та же

До этого использовал
map[string]interface{}{
   "event_id": eventID,
}
И у вас в запросе event_id, а в мапе events_id
источник

AT

Andrey Treyel in Go-go!
Ilya Kaznacheev
И у вас в запросе event_id, а в мапе events_id
Это я в телеге написал, так они одинаковые, и в структуре, и в запросе
источник

IK

Ilya Kaznacheev in Go-go!
Посмотрите в дебаге или в логе постгрес, какие конкретно запросы идут на бд, и будет видно, чего не хватает
источник

AZ

Aleksandr Zelenin in Go-go!
Andrey Treyel
NamedQueryContext
код покажи
источник

E

Edgar in Go-go!
Andrey Treyel
Всем добрый вечер.
Делаю запрос в бд для получение всех событий.
Использую библиотеку sqlx, для замены плейсхолдоров

При попытки вывести события с условием like получаю ошибку:
' pq: syntax error at or near ":" '

SQL запрос:
SELECT name, status FROM events WHERE id::text like :event_id

Может кто сталкивался с подобной ошибкой и подскажет, что делаю не так.

Спасибо
::::text
источник

E

Edgar in Go-go!
четыре двоеточия
источник

E

Edgar in Go-go!
Заработает
источник

E

Edgar in Go-go!
А, стоп, нет

В общем, там трабл, что sqlx считает, что поле ::text это у тебя не конвертация,
источник

AT

Andrey Treyel in Go-go!
Edgar
::::text
Благодарю, завелось
источник

E

Edgar in Go-go!
А, ну и отлично
источник

IK

Ilya Kaznacheev in Go-go!
Тоже подумал про это, но не догодался про экранирование
источник

IK

Ilya Kaznacheev in Go-go!
👍
источник

IK

Ilya Kaznacheev in Go-go!
Господа, а что делает json:",string”?
источник

IK

Ilya Kaznacheev in Go-go!
Стоило спросить, как я нашел в доках
источник

IK

Ilya Kaznacheev in Go-go!
The "string" option signals that a field is stored as JSON inside a JSON-encoded string. It applies only to fields of string, floating point, integer, or boolean types. This extra level of encoding is sometimes used when communicating with JavaScript programs
источник

E

Edgar in Go-go!
field int json:"field_tag,string”
источник

E

Edgar in Go-go!
в итоге в json будет строка
источник