Я определил некоторые переменные внутри файла с именем queries.py
и импортирую их в другой файл с именем views.py
. Проблема в том, что формат python не присваивает значения каждой переменной соответствующему заполнителю. Рассмотрим следующие строки кода:
queries.py
main_where_query = ''' where users.deleted_account is null
and length(users.phone_number) > 2
and length(users.phone_number) < 20
and users.phone_number not like '+98888888%'
'''
messages_where_query = """{0}
and messages.date>'{1}'
and messages.date<'{2}'
"""
views.py
from .queries import *
def get_activity(request):
global main_where_query
global messages_where_query
messages_where_query.format(main_where_query, str(start_date), str(end_date))
....
, и результат будет:
select count(messages.message_id) from messages
join users on users.id = messages.sender
{0}
and messages.date>'{1}'
and messages.date<'{2}'
and messages.media_type = 0
Как видите, все заполнители остались нетронутыми, например {0} {1 } {2} . Я уверен, что эти переменные не пусты и импортированы правильно.