Django Raw SQL отношение не существует
Я пытаюсь выполнить raw sql, но для этого требуется отношение, и я не совсем уверен, где и почему оно не работает так, как должно.
Settings.py
'default': {
'ENGINE': 'django.db.backends.postgresql',
'NAME': 'Primary',
'USER': 'user',
'PASSWORD': 'password',
'HOST': 'host',
'PORT': '5433',
},
'DataDB': {
'ENGINE': 'django.db.backends.postgresql',
'NAME': 'SpecialDataDB',
'USER': 'user',
'PASSWORD': 'password',
'HOST': 'host',
'PORT': '5433',
}
}
getData.py
if request.GET['data'] == True:
with connections['DataDB'].cursor() as cursor:
cursor.execute("Select i from Test")
row = cursor.fetchone()
return cursor
return None
У меня нет проблем с подключением к первой базе данных и использованием моего пользователя для аутентификации, затем я пытаюсь получить данные из второй базы данных (которая должна быть только для чтения) и получаю ошибку:
relation "test" does not exist LINE 1: Select i from Test
2-ая база данных предназначена только для чтения, почему не DBRouter? Я уже создавал его раньше, но он не работал так, как было задумано.
Все, что я хочу сделать сейчас, это получить эти необработанные данные и вернуть их в представление.
С другой стороны, я могу создать таблицу с помощью необработанного запроса.
cursor.execute("CREATE TABLE IF NOT EXISTS test (i integer)")
^ это работает
Как написать запрос select для получения данных без создания модели или как создать модель, которая будет с ней работать?