Django Как выбрать другую таблицу на основе ввода? - PullRequest
0 голосов
/ 13 июля 2020

Я долго искал решение этой проблемы, но у меня нет подходящего метода.

В основном все, что у меня есть, это тонны таблиц, и я хочу запросить значение из разных таблицы с использованием raw SQL.

В Django нам нужен класс, представляющий таблицу для выполнения запроса, например:

Routes.objects.raw("SELECT * FROM routes")

Таким образом, я могу только запросить таблица, но что, если я хочу запросить разные таблицы на основе ввода пользователя?

Я новичок в Django, вернувшись в ASP. NET, мы можем просто выполнить следующий запрос:

string query = "SELECT * FROM " + county + " ;";
var bus = _context.Database.SqlQuery<keelung>(query).ToList();

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

Есть ли какой-либо метод для достижения этого с помощью Django?

1 Ответ

0 голосов
/ 13 июля 2020

Вы можете запускать необработанные запросы в Django следующим образом -

From django.db import connection

cursor = connection.cursor()
table = my_table;
cursor.execute("Select * from " + table)
data = cursor.fetchall()
...