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

创建模型

语法

arduino

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创建模型实例。  


目录
相关文章
|
2天前
|
机器学习/深度学习 数据采集 算法
Python信贷风控模型:Adaboost,XGBoost,SGD, SVC,随机森林, KNN预测信贷违约支付|数据分享
Python信贷风控模型:Adaboost,XGBoost,SGD, SVC,随机森林, KNN预测信贷违约支付|数据分享
Python信贷风控模型:Adaboost,XGBoost,SGD, SVC,随机森林, KNN预测信贷违约支付|数据分享
|
2天前
|
数据采集 机器学习/深度学习 搜索推荐
使用Python实现推荐系统模型
使用Python实现推荐系统模型
15 1
|
2天前
|
Python
使用Django时,如何设计模型关系(一对一、一对多、多对多)?
Django支持三种模型关联:ForeignKey(一对多),OneToOneField(一对一)和ManyToManyField(多对多)。ForeignKey示例:`Article`有一个指向`Author`的外键。OneToOneField示例:`UserProfile`与`User`一对一关联。ManyToManyField示例:`Student`和`Course`之间多对多关系。这些关联字段便于反向查询,如`article.author`获取作者,`author.article_set.all()`获取作者所有文章。
7 1
|
2天前
|
运维 Shell Python
Shell和Python学习教程总结
Shell和Python学习教程总结
|
3天前
|
人工智能 自然语言处理 Python
使用Python实现自然语言处理模型
使用Python实现自然语言处理模型
13 1
|
3天前
|
机器学习/深度学习 算法 搜索推荐
Python用机器学习算法进行因果推断与增量、增益模型Uplift Modeling智能营销模型
Python用机器学习算法进行因果推断与增量、增益模型Uplift Modeling智能营销模型
30 12
|
3天前
|
机器学习/深度学习 算法 vr&ar
PYTHON用时变马尔可夫区制转换(MARKOV REGIME SWITCHING)自回归模型分析经济时间序列
PYTHON用时变马尔可夫区制转换(MARKOV REGIME SWITCHING)自回归模型分析经济时间序列
16 4
|
3天前
|
API vr&ar Python
Python 用ARIMA、GARCH模型预测分析股票市场收益率时间序列(上)
Python 用ARIMA、GARCH模型预测分析股票市场收益率时间序列
30 5
|
3天前
|
人工智能 Python
【AI大模型应用开发】【LangChain系列】实战案例1:用LangChain写Python代码并执行来生成答案
【AI大模型应用开发】【LangChain系列】实战案例1:用LangChain写Python代码并执行来生成答案
8 0
|
7天前
|
数据可视化 Python
Python模型评估与选择:面试必备知识点
【4月更文挑战第17天】本文深入探讨了Python模型评估与选择在面试中的关键点,包括性能度量、过拟合与欠拟合识别、模型比较与选择、模型融合和偏差-方差权衡。强调了避免混淆评估指标、忽视模型验证和盲目追求高复杂度模型的常见错误,并提供相关代码示例,如交叉验证、网格搜索和超参数调优。通过理解这些概念和技巧,可在面试中展示出色的数据科学能力。
31 12