Django学习- ORM基础操作_创建数据

ORM操作:

管理器对象:

创建数据:

Django shell

想要操作模型对象,首先我们需要把它引进Django shell中

复制代码
>>> from bookstore.models import Book
>>> b1 = Book.objects.create(title='AI', pub='清华大学出版社', price= 20,market_price = 25)
>>> b2 = Book(title='爱',pub='清华大学出版社',price=70,market_price = 50)
>>> b2.save()

查询数据:

例子:

第一步:在django学习下的settings中添加bookstore

python 复制代码
INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    # 'music',
    # 'news',
    # 'sport',
    'bookstore'
]

第二步:在 django学习下的urls添加bookstore

python 复制代码
from django.contrib import admin
from django.urls import path,include,re_path
from . import views

urlpatterns = [
    path('admin/', admin.site.urls),
    # 主路由链接需要加/
    #path('music/',include("music.urls")),
    #path('sport/',include("sport.urls")),
    #path('news/',include("news.urls")),
    path('bookstore/',include('bookstore.urls'))
]

第三步:在bookstore的模型和视图以及url

urls.py:

python 复制代码
from django.urls import path
from . import views

urlpatterns = [
    path('all_book', views.all_books, name='all_book')
]

views.py:

python 复制代码
from django.shortcuts import render

from bookstore.models import Book


# Create your views here.

def all_books(request):
    books = Book.objects.all()
    return render(request, 'bookstore/all_book.html',locals())

all_book.html

html 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>查看所有书籍</title>
</head>
<body>
<table >
    <tr>
        <th>id</th>
        <th>title</th>
        <th>pub</th>
        <th>price</th>
        <th>market_price</th>
        <th>op</th>
    </tr>
    {% for book in books %}
        <tr>
            <td>{{ book.id }}</td>
            <td>{{ book.title }}</td>
            <td>{{ book.pub }}</td>
            <td>{{ book.price }}</td>
            <td>{{ book.market_price }}</td>
            <td>
                <a href="">删除</a>
                <a href="">更新</a>
            </td>
        </tr>
    {% endfor %}
</table>
</body>
</html>

条件查询:

查询谓词:

修改数据:

删除操作:

单个删除:

批量删除:

伪删除:

相关推荐
li星野几秒前
【学习记录】逻辑分析仪完全入门:从品牌方案到采样率、存储深度的核心概念解析
学习
孟健18 分钟前
我用Grok Bot本地剪口播视频,3段提示词搞定气口切除、字幕与封面
人工智能·python·aigc
旖旎夜光19 分钟前
【C++ 基础入门】类和对象(上):封装、对象模型与 this 指针
开发语言·c++·笔记·学习
2601_966949651 小时前
如何封装 qd.klines.batch(),让批量 K 线查询函数在多个策略中复用?
开发语言·python·数据分析·pandas·量化交易·股票数据·quantdash
WEI_YANG_JU1 小时前
初中数学教学中合作学习的研究与实践
学习
码农小韩1 小时前
FPGA学习(一)——LED点灯与开发流程
学习·fpga开发·入门·环境配置·仿真·点灯
神仙别闹2 小时前
基于Python实现英词语自动对齐系统
开发语言·python
李长渊哦2 小时前
Qoder 自定义子智能体(Subagent)学习笔记
chrome·笔记·学习
代码山河3 小时前
基本类型转换:自动类型转换与强制类型转换
java·学习·架构·教程·面向对象·项目
老歌老听老掉牙3 小时前
圆柱端面四平面交线及其在yoz面投影的几何解析与 Python 实现
开发语言·python·平面