如何使用Django模型Models對資料庫進行增刪改查
Django的抽象模型Models可以直接對資料庫進行增刪改查,不需要你自己寫SQL語言來進行相關資料庫操作。今天我們就以部落格blog為例,看下Django是如何對資料庫進行增刪改查的。
我們將會用到如下這個簡單的Article模型:
from django.db import models
class Article(models.Model):
title = models.CharField('標題', max_length=200, unique=True)
body = models.TextField('正文')
def __str__(self):
return self.title
增
增即建立新的物件或新增新的條目。如果我們要給資料庫新增一篇新的文章,Django提供了2種常見操作方式。
方法一,傳統save方法。
obj = Article(title="My first article", body="My first article body")
obj.save()
注意: 該方法如果不選擇save(), 建立的物件將不會儲存到資料庫中去。正因為如此,Django還提供了更便捷的create方法。
方法二,便捷的create方法。
Article.objects.create(title="My first article", body="My first article body" )
注意: 對Django自帶auth模組中的User模型操作,比如建立新的使用者時,請用create_user方法。該方法會將密碼自動加Hash儲存到資料庫中。
from django.contrib.auth.models import User
user = User.objects.create_user(username='john',
email='[email protected]',
password='somepwd')
刪
刪即刪除一個已有物件或從表中刪除一個已有條目。Django也允許同時刪除多個物件或條目。
案例一,刪除所有文章 (請慎用!!)
Article.objects.all().delete()
案例二,刪除標題裡含有python的所有文章(不區分大小寫)
Article.objects.filter(title__icontains="python").delete()
改
改既可以用save方法,也可以用update方法。其區別在於save方法不僅可以更新資料中現有物件資料,還可以建立新的物件。而update方法只能用於更新已有物件資料。一般來說,如果要同時更新多個物件資料,用update方法更合適。
案例一,利用save方法更新某一文章標題
article = Article.objects.get(id=1)
article.title = "New article title"
article.save()
案例二,利用update方法更新某一文章標題
article = Article.objects.get(id=1).update(title='new title')
案例三,利用update方法更新多篇文章標題
article = Article.objects.filter(title__icontains='python').update(title='Django')
查
Django對於資料庫的查詢主要是get和filter等方法。我們來看幾個案例。
案例一,查詢所有資料
Article.objects.all()
Article.objects.all().values()
# 只獲取title列表-字典形式
Article.objects.all().values('title')
# 只獲取title列表- 元組形式,只有value,沒有key
Article.objects.all().values_list('title')
注意:使用values和values_list可以減少資料庫查詢工作量。如果只需要在模板中使用某些欄位,而不是全部欄位,建議使用values和values_list。
案例二,查詢某一條資料
Article.objects.get(id=1)
案例三,模糊查詢返回資料集, 並去重
Article.objects.filter(title__icontains='python').distinct()
相關推薦
如何使用Django模型Models對資料庫進行增刪改查
Django的抽象模型Models可以直接對資料庫進行增刪改查,不需要你自己寫SQL語言來進行相關資料庫操作。今天我們就以部落格blog為例,看下Django是如何對資料庫進行增刪改查的。我們將會用到如
mybatis 在前端對資料庫進行增刪改查
Springboot 對資料庫進行增刪改查 首先要實現在idea裡面能實現對資料看的增刪改查,最後再實現前後端互動 1.首先在資料庫裡面先建好資料庫(test01)和表(t_user) 2.配置檔案pom.xml <?xml version="1.0"
Laravel 資料庫例項教程 —— 使用查詢構建器對資料庫進行增刪改查
上一節我們講了如何使用DB門面對資料庫進行原生查詢,這一節我們使用另外一種方式實現對資料庫的增刪改查——查詢構建器(Query Builder)。 獲取查詢構建器很簡單,還是要依賴DB門面,我們使用DB門面的table方法,傳入表名,即可獲取該表的查詢構建器: $us
ASP.NET 使用類對資料庫進行增刪改查操作
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Dat
JDBC通過PreparedStatement 對資料庫進行增刪改查
import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; public
Django 操作Mysql資料庫 對錶進行增刪改查
首先說明:以下方法都是根據表已有的欄位新增資料,若想新增欄位,則需在類裡面新建靜態欄位, 可參考Django 操作資料庫建表 ,增刪改查在views.py 操作, 建表和欄位在models.py 操作 1、首先在 models.py 裡定義 任意 1個 模型類 本人定義 Asset,可自動生成對應的表 f
python 連線oracle資料庫對錶進行增刪改查操作
Python 建立連線oracle資料庫的三種方式: 方式一:使用者名稱、密碼和監聽分開寫 import cx_Oracle db=cx_Oracle.connect('username/[email protected]/orcl') db.close()
scalikejdbc框架對mysql資料庫進行增刪改查,事務建立
1.在scala中想要操作mysql數庫中的資料,可以使用scalikejdbc。 2.匯入依賴。 3.在resource檔案中新增application.conf檔案。然後配置引數。 db.def
安卓端通過http對Mysql進行增刪改查
name 交流 shm != 用戶 習慣 cti -perm 得到 各類it學習視頻,大家都可以看看哦!我自己本人都是通過這些來學習it只知識的! 下面是視頻鏈接轉自:http://www.cnblogs.com/wangying222/p/5492935.html ht
C#中對sqlserver進行增刪改查操作(簡單易懂)
uid 數據連接 net cti ade 密碼 logs where Go 1、添加引用using System.Data;using System.Data.SqlData;2、建立於數據庫的連接,建議將它做成一個方法,方便多次利用。string sqlconnectio
asp.net core webapi 使用ef 對mysql進行增刪改查,並生成Docker鏡像構建容器運行
rri put void userdata pro ext 代理 cte 成功 1.構建運行mysql容器,添加數據庫user 參考Docker創建運行多個mysql容器,地址 http://www.cnblogs.com/heyangyi/p/9288402.html
docker基礎:私庫系列:再探Harbor:(7) 使用restapi對專案進行增刪改查
在上篇文章中介紹了Harbor的RestApi,這篇具體以專案的增刪改查作為例子來進行說明。 前提假定 假定Harbor運行於本機localhost的32031埠 專案查詢 查詢全部專案 curl -X GET “http://localhost:32031/
Zookeeper JavaAPI對節點進行增刪改查(詳細步驟)
import java.io.IOException; import java.util.List; import org.apache.zookeeper.CreateMode; import org.apache.zookeeper.KeeperException; import org.ap
ORACLE中建立表、對錶進行增刪改查的語法
最近在學習ORACLE,現將在ORACLE中建立表、對錶進行增刪該查的語法總結如下: 表是一種資料庫物件,是基本的資料儲存單位,由行和列組成 表的建立(以課程資訊表為例): CREATE TABLE OBJECTS
springboot整合jpa實現對資料庫的增刪改查
在實際開發中,spring整合mybatis或者jpa對資料庫操作的情況都存在,這兩者的區別或關係就不在贅述了,簡單來說呢,就是jpa實現起來比較簡單,很方便上手。下面看一下我們的專案如何配置jpa實現對資料庫的操作吧。 首先在pom中引入依賴了,這裡可以在建立專案時選擇j
利用Spring框架在前端實現對資料庫的增刪改查
在前端頁面上顯示購物資料庫資料,並且可以這增、刪、改、查 1.首先在WEB 配置檔案 <!-- 配置DispatcherServlet --> <servlet> <servlet-name>springmvc</serv
Python--綜合練習--對檔案進行增刪改查
知識點應用:strip() tag 函式封裝 檔案操作 for迴圈 os模組 程式碼解耦 例項 tag = True while tag: print('level') choice = input('level1
使用文字處理php的欄位代替資料庫進行增刪改查
第一次就是比較慢 寫個模版 以後有小型的東西 可以考慮不用資料庫的 那麼就用字串操作 search.php <?php /** * Created by PhpStorm. * User: liuan * Date: 2018/11/29 * Time: 23:46 */
IDEA java連線mysql資料庫,實現對資料庫的增刪改查
先上程式碼: package Database_Demo; import java.sql.*; public class DataBase { public static void main(String[] args) { Connect
Solr13 - 通過SolrCloud的RESTful API對叢集進行增刪改查操作
文章目錄 1 建立操作 1.1 建立collection 1.2 建立core 1.3 建立API引數說明 2 刪除操作 2.1 刪除collection 2.2 解除安裝core 2.3 刪