mirror of
				https://github.com/fastapi/sqlmodel.git
				synced 2025-11-04 14:47:08 +08:00 
			
		
		
		
	
		
			
				
	
	
		
			92 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			92 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
# Delete Data with FastAPI
 | 
						|
 | 
						|
Let's now add a *path operation* to delete a hero.
 | 
						|
 | 
						|
This is quite straightforward. 😁
 | 
						|
 | 
						|
## Delete Path Operation
 | 
						|
 | 
						|
Because we want to **delete** data, we use an HTTP `DELETE` operation.
 | 
						|
 | 
						|
We get a `hero_id` from the path parameter and verify if it exists, just as we did when reading a single hero or when updating it, **possibly raising an error** with a `404` response.
 | 
						|
 | 
						|
And if we actually find a hero, we just delete it with the **session**.
 | 
						|
 | 
						|
//// tab | Python 3.10+
 | 
						|
 | 
						|
```Python hl_lines="3-11"
 | 
						|
# Code above omitted 👆
 | 
						|
 | 
						|
{!./docs_src/tutorial/fastapi/delete/tutorial001_py310.py[ln:89-97]!}
 | 
						|
 | 
						|
# Code below omitted 👇
 | 
						|
```
 | 
						|
 | 
						|
////
 | 
						|
 | 
						|
//// tab | Python 3.9+
 | 
						|
 | 
						|
```Python hl_lines="3-11"
 | 
						|
# Code above omitted 👆
 | 
						|
 | 
						|
{!./docs_src/tutorial/fastapi/delete/tutorial001_py39.py[ln:91-99]!}
 | 
						|
 | 
						|
# Code below omitted 👇
 | 
						|
```
 | 
						|
 | 
						|
////
 | 
						|
 | 
						|
//// tab | Python 3.7+
 | 
						|
 | 
						|
```Python hl_lines="3-11"
 | 
						|
# Code above omitted 👆
 | 
						|
 | 
						|
{!./docs_src/tutorial/fastapi/delete/tutorial001.py[ln:91-99]!}
 | 
						|
 | 
						|
# Code below omitted 👇
 | 
						|
```
 | 
						|
 | 
						|
////
 | 
						|
 | 
						|
/// details | 👀 Full file preview
 | 
						|
 | 
						|
//// tab | Python 3.10+
 | 
						|
 | 
						|
```Python
 | 
						|
{!./docs_src/tutorial/fastapi/delete/tutorial001_py310.py!}
 | 
						|
```
 | 
						|
 | 
						|
////
 | 
						|
 | 
						|
//// tab | Python 3.9+
 | 
						|
 | 
						|
```Python
 | 
						|
{!./docs_src/tutorial/fastapi/delete/tutorial001_py39.py!}
 | 
						|
```
 | 
						|
 | 
						|
////
 | 
						|
 | 
						|
//// tab | Python 3.7+
 | 
						|
 | 
						|
```Python
 | 
						|
{!./docs_src/tutorial/fastapi/delete/tutorial001.py!}
 | 
						|
```
 | 
						|
 | 
						|
////
 | 
						|
 | 
						|
///
 | 
						|
 | 
						|
After deleting it successfully, we just return a response of:
 | 
						|
 | 
						|
```JSON
 | 
						|
{
 | 
						|
    "ok": true
 | 
						|
}
 | 
						|
```
 | 
						|
 | 
						|
## Recap
 | 
						|
 | 
						|
That's it, feel free to try it out in the interactive docs UI to delete some heroes. 💥
 | 
						|
 | 
						|
Using **FastAPI** to read data and combining it with **SQLModel** makes it quite straightforward to delete data from the database.
 |