Python 教程之 Django(7)Django 模型

简介: Python 教程之 Django(7)Django 模型

Django模型是Django用于创建表,其字段和各种约束的内置功能。简而言之,Django模型是与Django一起使用的数据库的SQL。SQL(结构化查询语言)很复杂,涉及许多不同的查询,用于创建,删除,更新或与数据库相关的任何其他内容。Django模型简化了任务并将表格组织成模型。通常,每个模型都映射到单个数据库表。

本文将介绍如何使用Django模型方便地将数据存储在数据库中。此外,我们可以使用Django的管理面板来创建,更新,删除或检索模型的字段以及各种类似的操作。Django模型提供简单性,一致性,版本控制和高级元数据处理。模型的基础知识包括 –

  • 每个模型都是一个Python类,它子类化了django.db模型。
  • 模型的每个属性都表示一个数据库字段。
  • 有了所有这些,Django为您提供了一个自动生成的数据库访问API。

例–

from django.db import models
# 在此处创建模型。
class GeeksModel(models.Model):
  title = models.CharField(max_length = 200)
  description = models.TextField()

Django将Django模型中定义的字段映射到数据库的表字段中,如下所示。

image.png


使用 Django 模型

要使用Django模型,需要有一个项目和一个应用程序在其中工作。启动应用后,可以在应用/模型中创建模型.py。在开始使用模型之前,让我们检查一下如何启动项目并创建一个名为 geeks.py


创建模型

语法

from django.db import models
class ModelName(models.Model):
        field_name = models.Field(**options)

要创建模型,请在极客/模型中.py输入代码,

# 从内置库导入标准Django模型
from django.db import models
# 声明一个名为“GeeksModel”的新模型
class GeeksModel(models.Model):
    # 模型的字段
  title = models.CharField(max_length = 200)
  description = models.TextField()
  last_modified = models.DateTimeField(auto_now_add = True)
  img = models.ImageField(upload_to = "images/")
    # 用标题名称重命名模型实例
  def __str__(self):
    return self.title

每当我们创建模型,删除模型或更新项目 models.py 的任何内容时。我们需要运行两个命令进行迁移和迁移。makemigrations基本上为预安装的应用程序(可以在 settings.py 的已安装应用程序中查看)和新创建的应用程序模型生成SQL命令,而迁移则在数据库文件中执行这些SQL命令。

所以当我们运行时,

Python manage.py makemigrations

创建上述模型作为表的 SQL 查询,然后创建

 Python manage.py migrate

在数据库中创建表。

现在我们已经创建了一个模型,我们可以执行各种操作,例如为表创建行或Django创建模型实例。  



目录
相关文章
|
11天前
|
Linux 网络安全 Python
linux centos上安装python3.11.x详细完整教程
这篇文章提供了在CentOS系统上安装Python 3.11.x版本的详细步骤,包括下载、解压、安装依赖、编译配置、解决常见错误以及版本验证。
81 1
linux centos上安装python3.11.x详细完整教程
|
9天前
|
机器学习/深度学习 数据采集 自然语言处理
使用Python实现深度学习模型:智能社交媒体内容分析
使用Python实现深度学习模型:智能社交媒体内容分析
134 70
|
9天前
|
机器学习/深度学习 算法 数据可视化
8种数值变量的特征工程技术:利用Sklearn、Numpy和Python将数值转化为预测模型的有效特征
特征工程是机器学习流程中的关键步骤,通过将原始数据转换为更具意义的特征,增强模型对数据关系的理解能力。本文重点介绍处理数值变量的高级特征工程技术,包括归一化、多项式特征、FunctionTransformer、KBinsDiscretizer、对数变换、PowerTransformer、QuantileTransformer和PCA,旨在提升模型性能。这些技术能够揭示数据中的潜在模式、优化变量表示,并应对数据分布和内在特性带来的挑战,从而提高模型的稳健性和泛化能力。每种技术都有其独特优势,适用于不同类型的数据和问题。通过实验和验证选择最适合的变换方法至关重要。
17 5
8种数值变量的特征工程技术:利用Sklearn、Numpy和Python将数值转化为预测模型的有效特征
|
11天前
|
机器学习/深度学习 人工智能 算法
【新闻文本分类识别系统】Python+卷积神经网络算法+人工智能+深度学习+计算机毕设项目+Django网页界面平台
文本分类识别系统。本系统使用Python作为主要开发语言,首先收集了10种中文文本数据集("体育类", "财经类", "房产类", "家居类", "教育类", "科技类", "时尚类", "时政类", "游戏类", "娱乐类"),然后基于TensorFlow搭建CNN卷积神经网络算法模型。通过对数据集进行多轮迭代训练,最后得到一个识别精度较高的模型,并保存为本地的h5格式。然后使用Django开发Web网页端操作界面,实现用户上传一段文本识别其所属的类别。
24 1
【新闻文本分类识别系统】Python+卷积神经网络算法+人工智能+深度学习+计算机毕设项目+Django网页界面平台
|
9天前
|
机器学习/深度学习 数据采集 自然语言处理
使用Python实现深度学习模型:智能新闻生成与校对
使用Python实现深度学习模型:智能新闻生成与校对
32 10
|
8天前
|
机器学习/深度学习 数据采集 网络安全
使用Python实现深度学习模型:智能网络安全威胁检测
使用Python实现深度学习模型:智能网络安全威胁检测
33 5
|
7天前
|
机器学习/深度学习 TensorFlow 算法框架/工具
使用Python实现深度学习模型:智能数据隐私保护
使用Python实现深度学习模型:智能数据隐私保护
17 1
|
11天前
|
机器学习/深度学习 数据采集 自然语言处理
使用Python实现深度学习模型:智能广告创意生成
使用Python实现深度学习模型:智能广告创意生成
27 4
|
9天前
|
缓存 前端开发 Java
python之django
python之django
|
9天前
|
Python Windows
python入门保姆级教程 | 13
python入门保姆级教程 | 13
下一篇
无影云桌面