2013-07-10 2 views
1

Я работал с MyMySQL и в настоящее время написал вызов API, который принимает переменное количество параметров и генерирует поисковый запрос. Я пытаюсь связать прошедшие в параметрах для защиты от SQL-инъекций, однако я не могу понять, как обрабатывать переменное количество параметров. Функция Привязка подписи выглядит следующим образом:Golang динамическое число переменных связывания

Bind(params ...interface{}) 

Хотя я угадал оба решения не будет работать, я попытался связывание каждого параметра по одному за раз в цикле, а затем также пытались прохождения в интерфейсе [] {}, содержащий все значения параметров.

Есть ли все равно, чтобы справиться с этим решением? Связывание с конструкцией не работает, поскольку у меня может быть несколько значений для каждого поля. Например, я мог бы вернуть 1 или 10 идентификаторов компании.

ответ

2

Ваша вторая попытка была близка к успеху. Построить, скажем var foo []interface{}, содержащий все аргументы и передать его в качестве

Bind(foo...) 

Смотрите также Passing arguments to ... parameters

+0

я пропустил это как-то, но теперь прекрасно работает, спасибо! – user387049

Смежные вопросы