Django 5 для начинающих

Прогресс по курсу:  9/1004

3.3 Первые ORM запросы (CRUD)
4 из 15 шагов пройдено
0 из 49 баллов  получено

Удаление данных из БД

Для удаления информации из БД используется метод delete(). Удаление единственной записи из таблицы можно выполнить с помощью ее id. Например:

post_2 = Post.objects.get(id=2)
post_2.delete()

Здесь в первой строке в элемент post_2 загружена информация из строки таблицы базы данных с id=2, а во второй строке вызван метод, который удалил из таблицы БД эту строку.

Если не требуется получение отдельного объекта из базы данных, тогда можно удалить объект одной строкой программного кода с помощью комбинации методов filter() И delete():

Post.objects.filter(id=3).delete()

Этой командой будет удалена строка с id=3 непосредственно в базе данных, без предварительной загрузки ее содержимого в приложение.

 

Просмотр строки SQL-зaпpoca к базе данных

Рассмотренные здесь методы при обращении к базе данных фактически используют SQL-запросы, хотя это и скрыто от разработчика.

В Django с помощью свойства query можно получить и посмотреть текст выполняемого SQL-запроса. Например, при выполнении кода:

my_post = Post.objects.all()
print(my_post.query)

В консоли отобразится следующий SQL-запрос:

SELECT "posts_post"."id", "posts_post"."text" FROM "posts_post"

Таким образом мы можем смотреть любые запросы, которые будет выполнять Django.


Будьте вежливы и соблюдайте наши принципы сообщества. Пожалуйста, не оставляйте решения и подсказки в комментариях, для этого есть отдельный форум.
Оставить комментарий

... получить и посмотреть текст выполняемого SQL-запрос(а).

@Нарбеков_Марсель, Спасибо, поправил.