django-模型

django的特点

  • 企业级开发框架,插件非常丰富
  • django是一个基于 MVT(Model View Template) 的一个设计思想 设计的框架
    • M : 模型,django 的模型采用 ORM 设计思想
    • V : 视图,主要负责 前后台数据的交互
    • T : 模板, 主要用来负责展示数据
  • MVT 是基于 MVC(Model View Controller)产生的, MVC 是市面上主流的三层分离框架
    • M : 模型,由于语言不一样,M可能采用的技术不一样,大部分也会采用 ORM设计思想
    • V : 视图,相当于 django中的模板、主要负责展示数据
    • C : 控制器, 相当于 django的 视图,但稍有区别,C是控制器,相当于人类的大脑,支配整个网站

django 模型 ORM( Object RelationShip Mapping) 对象关系映射

  • O : 对象
  • R :关系
  • M :映射

ORM解决的问题

  • ORM 主要解决的是 类与表之间的关系、对象和记录的关系、属性和字段的关系

django 中 使用模型

  • 模型的定义必须要在 app 中进行定义
  • 编写一个模型的步骤如下:
    • from django.db import models
    • 定义一个类,继承 models.Model
    • 在类中定义属性, 属性的类型是 models.XXXField 类型

根据模型,生成对应的表

  • 激活应用 settings.py 中 ,INSTALLED_APPS 中添加应用
  • 检查模型的语法是否正确 (不是必须的) python manage.py check appName
    • System check identified no issues (0 silenced). 代表检查没有发现问题
  • 生成迁移文件 python manage.py makemigrations appName
Migrations for 'bbs':
  bbs\migrations\0001_initial.py
    - Create model Student
  • 查看迁移文件对应的SQL语句(不是必须的) python manage.py sqlmigrate appName 迁移文件编号
  • 执行迁移文件 python manage.py migrate appName
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Django自带的django-cities和django-countries是两个非常有用的插件,可以帮助您实现国家地区选择功能。 django-countries是一个包含所有国家和地区信息的插件,可以帮助您实现国家和地区选择功能。使用django-countries,您可以轻松地获取国家和地区的信息,例如国家名称、国旗、货币等等。此外,django-countries还支持多种语言,可以帮助您实现多语言的国家地区选择功能。 django-cities是一个包含世界各地城市信息的插件,可以帮助您实现省份和城市选择功能。使用django-cities,您可以轻松地获取城市的信息,例如城市名称、所属省份、经纬度等等。此外,django-cities还支持模糊查询和多语言功能,可以帮助您实现更加灵活和便捷的省份和城市选择功能。 在使用这两个插件时,您需要在Django的settings.py文件中进行配置,例如: ```python INSTALLED_APPS = [ # ... 'django_countries', 'cities', # ... ] ``` 然后可以在模型中引入这些插件提供的模型类,例如: ```python from django_countries.fields import CountryField from cities.models import City, Country class UserProfile(models.Model): # ... country = CountryField() city = models.ForeignKey(City, on_delete=models.PROTECT) # ... ``` 这样就可以在用户资料中添加国家和城市信息,并且可以使用插件提供的模板标签和表单字段来实现国家地区选择功能。 希望这些信息能够对您有所帮助!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值