я сделал петлю, чтобы получить условие:Как добавить дополнительные условия в where clause?
for level in levels:
requete += ' and level_concat like %'+level+'%'
и я сделал в моем запросе:
countries = Country.objects.extra(where=['continent_id = "'+continent_id+'"', requete])
Я попытался добавить условие к моему где положению, но возвращать ошибку:
not enough arguments for format string
Уважаемые результаты:
SELECT * FROM `Country` WHERE country_id = "US-51" AND level_concat LIKE %level_test%
Есть ли способ добавить requete
в мое предложение «где»?
Любая конкретная причина, по которой вы используете '.extra', а не' .filter'? –
, потому что 'level_concat' - это список уровней, объединенных комой, а' requete' содержит также список уровней. Итак, как это сделать с '.filter' – Drwhite
Я не знаю, какова структура вашего списка. Но так или иначе, я думаю, вам нужно избегать знака '%' в вашем запросе как '%%', поэтому 'и level_concat, как% '+ level +'% '' должны быть 'и level_concat, как %%' + level + '%% «' –