массовое добавление параметров UTM в URL-адреса продукта - postgresql django - PullRequest
0 голосов
/ 09 июня 2019

Я пытаюсь найти способ добавить Utm paramaters к каждому столбцу link в моем postresql, используя django.

Ссылки выглядят примерно так:

https://www.headout.com/tour/5696/united-states/las-vegas/eldorado-canyon-techatticup-mine-tour-premium-group-tour

Utm вроде следующего:

?utm_source=uvergo&utm_medium=ref&utm_campaign=meta

И результат будет таким:

https://www.headout.com/tour/5696/united-states/las-vegas/eldorado-canyon-techatticup-mine-tour-premium-group-tour?utm_source=uvergo&utm_medium=ref&utm_campaign=meta

Есть ли способ добавить параметр оптом без необходимости повторной индексации всех моих данных? В views.py или что-то?

Пожалуйста, помогите.

1 Ответ

0 голосов
/ 09 июня 2019

Вы можете сделать это с выражением F

LinkModel.objects.all().update(url=F('url') + '?utm_source=uvergo&utm_medium=ref&utm_campaign=meta')

Вы говорите, что не хотите переиндексировать свои данные, вы должны знать, что любое изменение индексированного поля приведет к переиндексации postgres. Если вы действительно не хотите, чтобы это произошло, вы можете удалить индекс и затем воссоздать его после обновления , см. Документацию по одновременному созданию индексов

...