首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

创建由ForeignKey字段关联的2个Django模型的Excel报告

创建由ForeignKey字段关联的两个Django模型的Excel报告可以通过以下步骤实现:

  1. 首先,确保已经安装了Django和openpyxl库。可以使用以下命令安装openpyxl库:
  2. 首先,确保已经安装了Django和openpyxl库。可以使用以下命令安装openpyxl库:
  3. 在Django项目中创建两个相关的模型,并使用ForeignKey字段将它们关联起来。例如,创建一个名为"ModelA"的模型和一个名为"ModelB"的模型,其中"ModelB"通过ForeignKey字段与"ModelA"关联:
  4. 在Django项目中创建两个相关的模型,并使用ForeignKey字段将它们关联起来。例如,创建一个名为"ModelA"的模型和一个名为"ModelB"的模型,其中"ModelB"通过ForeignKey字段与"ModelA"关联:
  5. 创建一个视图函数,用于生成Excel报告。在该函数中,使用openpyxl库创建一个新的工作簿,并将相关数据添加到工作簿中:
  6. 创建一个视图函数,用于生成Excel报告。在该函数中,使用openpyxl库创建一个新的工作簿,并将相关数据添加到工作簿中:
  7. 在urls.py文件中定义一个URL模式,将该视图函数与URL路径关联起来:
  8. 在urls.py文件中定义一个URL模式,将该视图函数与URL路径关联起来:
  9. 运行Django开发服务器,并访问生成Excel报告的URL路径(例如:http://localhost:8000/excel-report/)。将会下载一个名为"excel_report.xlsx"的Excel文件,其中包含由ForeignKey字段关联的两个模型的数据。

这样,你就可以通过创建由ForeignKey字段关联的两个Django模型的Excel报告了。请注意,以上代码仅为示例,实际情况中可能需要根据具体需求进行修改和优化。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

DjangoForeignKey和ManyToManyField多表查询

多表查询是模型重要功能之一, Django提供了一套基于关联字段独特解决方案....ForeignKey字段接受一个Model类作为参数, 类型与被参照字段完全相同: blog = models.ForeignKey(Blog) ForeignKey.to_field 关联关联对象字段名称...ForeignKey.related_name 这个名称用于让关联对象反查到源对象. 如果你不想让Django 创建一个反向关联,请设置related_name 为 '+' 或者以'+' 结尾....ForeignKey.related_query_name以ForeignKey.related_name作为默认值 使用ForeignKey查询 前向查询 若关系模型A包含与模型B关联关联字段, 模型...flight.reserve.remove(user) flight.save() 参考资料: django文档-模型字段-关联字段 django文档 - 执行查询 - 关联对象 django文档 -

1.7K10

完整 Django 零基础教程|初学者指南 - 第 3 部分 转自:维托尔·弗雷塔斯

与日期和时间字段一样,我们还必须引用User 模型**.created** 和updated . 。 最后,用户 模型。...在这个表示中,我们可以更清楚地看到,在Post 模型中,关联 主题 、创建者 和更新者 成为模型字段。...每个字段django.db.models.Field 子类(内置 Django 核心)实例表示,并将被转换为数据库列 。...在模型之间创建关系一种方法是使用 ForeignKey字段。它将在模型之间创建链接并在数据库级别创建适当关系。该 ForeignKey字段需要一个位置参数,其中包含对其将相关模型引用。...例如,在 Topic模型中,board字段ForeignKey给 Board模型。它告诉 Django 一个 Topic实例只与一个 Board实例相关。

2.1K40

基于Django OneToOneField和ForeignKey区别详解

模型(Models)是对网站所需信息种类定义,其包含了网站存储数据中重要字段和数据行为。...一般来说,一个模型对于数据库中一个表单。 字段(Fields)是模型重要和唯一组成部分,他们类别的属性值所指定。...对于每个ForeignKey,我们需要给出关联模型和on_delete响应选项,即 manufacturer = models.ForeignKey( 'Manufacturer', on_delete...,再删除此字段信息时候同时删除包含ForeignKey字段目标(object) PROTECT 通过django.db.IntegrityError中ProtectedError来保护此字段不被删除...toppings = models.ManyToManyField(Topping) 在示例代码中,Pizza类toppings字段ManyToManyField与Toppings关联,我们可以生活常识得出一片披萨上面会有很多种类佐料

2.3K20

django 1.8 官方文档翻译: 2-3-2 关联对象参考

在上面的例子中,对于ForeignKey关系,e.save()关联管理器调用,执行更新操作。...然而,在多对多关系中使用add()并不会调用任何 save()方法,而是QuerySet.bulk_create()创建关系。...如果你需要在关系被创建时执行一些自定义逻辑,请监听m2m_changed信号。 create(**kwargs) 创建一个新对象,保存对象,并将它添加到关联对象集之中。...对于ForeignKey对象,这个方法仅在null=True时存在。如果关联字段不能设置为None (NULL),则这个对象在添加到另一个关联之前不能移除关联。...注意 注意对于所有类型关联字段,add()、create()、remove()和clear()都会马上更新数据库。换句话说,在关联任何一端,都不需要再调用save()方法。

45410

Django 学习笔记之模型(上)

它们三者之间关系应该这样:一本书一家出版社出版,一家出版社可以出版很多书。一本书多个作者合写,一个作者可以写很多书。 1)ForeignKey 表示属于模型间关系中多对一关系。...在我们范例模型中,一家出版社 publisher 可以出版很多书 Book。在数据库中, Django 使用 ForeignKey 字段名称+ "_id" 做为数据库中列名称。...你可以通过显式地指定 db_column 来改变该字段列名称,不过,除非你想自定 义 SQL ,否则没必要更改数据库列名称。 它第一个参数必须传入该模型关联类。...在我们范例模型中, Book 有一个 多对多字段 叫做 authors。因为他们关系是一本书多个作者合写,一个作者可以写很多书。...在数据库中 Django 创建一个中间表来表示 ManyToManyField 关系。默认情况下,中间表名称两个关系表名结合而成。所以刚才我们创建数据库表途中,会有四张表,而不是三表。

1.7K30

ORM常用字段介绍

它包含了你存储数据重要字段和行为。通常,一个模型(model)映射到一个数据库表, 基本情况: 每个模型都是一个Python类,它是django.db.models.Model子类。...模型每个属性都代表一个数据库字段。 综上所述,Django为您提供了一个自动生成数据库访问API 详询官方文档链接。...关系字段 ForeignKey 外键类型在ORM中用来表示外键关联关系,一般把ForeignKey字段设置在 '一对多'中'多'一方。...OneToOneField 一对一字段。 通常一对一字段用来扩展已有字段字段参数 to 设置要关联表。 to_field 设置要关联字段。 on_delete 同ForeignKey字段。...related_query_name 同ForeignKey字段。 symmetrical 仅用于多对多自关联时,指定内部是否创建反向操作字段。默认为True。

2.5K10

【云+社区年度正文】Django从入门到精通No.2----模型

django从入门到精通No.2----模型 一、前言 学过orm系统自然之道模型重要性,很多web站点都需要与数据库交互,这个时候模型设计就显得尤为重要,一个好模型会使得项目方便管理并且易于维护...三、模型字段和约束 这里我们需要在he文件夹中找到models.py文件,然后我们试着改动一下这个文件内容,如下: from django.db import models ​ # Create your...必填参数primary_key=True,则成为数据库主键,无该字段时,django自动创建,一个model不能有两个该字段。...1.多对一 因为是关联关系,所以我们必须指定两个类来进行相互操作,这里涉及到一个外键操作,即ForeignKey字段,而且外键要定义在多一方。...,你可以指定一个中介模型来定义多对多关系,可以将其它字段放在中介模型中,源模型字段使用through参数指向中介模型

2.1K00

django ImportExportModelAdmin自定义导出数据

官方文档:django-import-export django 导出数据到excel 借助官方文档一些数据进行理解: class Author(models.Model): name = models.CharField...class BookResource(resources.ModelResource): class Meta: model = Book # 要影响哪些模型字段将包含在导入导出资源中...name实际得到就是作者名字, 但是在查询时记得使用select_related(),以保证在查询时可以将所关联外键数据一块查出,否则无法使用链式调用, 最下面会有完整例子说明 '''...Field(attribute='published', column_name='published_date') class Meta: model = Book 可以添加目标模型中不存在其他字段...,published,price,categories Some book by 1,2,Some book,1,,0,2012-12-05,8.85,1 自定义小部件 一个ModelResource创建与给定字段类型默认控件字段

70040

Django中ORM介绍和字段及其参数

它包含了你存储数据重要字段和行为。通常,一个模型(model)映射到一个数据库表, 基本情况: 每个模型都是一个Python类,它是django.db.models.Model子类。...关系字段 ForeignKey   外键类型在ORM中用来表示外键关联关系,一般把ForeignKey字段设置在 '一对多'中'多'一方。   ...字段参数 to:设置要关联表; related_name:反向操作时,使用字段名,用于代替原反向查询时'表名_set'(同ForeignKey字段)。...symmetrical:仅用于多对多自关联时,指定内部是否创建反向操作字段。默认为True。...ordering 这个字段是告诉Django模型对象返回记录结果集是按照哪个字段排序

2.8K80

django 1.8 官方文档翻译:2-1-1 模型语法

ForeignKey 需要一个位置参数:与该模型关联类。...你还可以创建递归关联关系(对象和自己进行多对一关联)和 与尚未定义模型关联关系;详见模型字段参考。...建议你用被关联模型小写名称做为ForeignKey 字段名字(例如,上面manufacturer)。当然,你也可以起别的名字。...另见 ForeignKey 字段还接受许多别的参数,在模型字段参考有详细介绍。这些选项帮助定义关联关系应该如何工作;它们都是可选参数。...toppings = models.ManyToManyField(Topping) 和使用ForeignKey 一样,你也可以创建递归关联关系(对象与自己多对多关联)和与尚未定义关系模型关联关系

4.9K20

Python+django网页设计入门(19):创建模型扩展自带用户表字段

技术要点: 1)创建自定义用户模型,使用一对一映射关系,扩展django自带用户表字段; 2)使用django自带认证和登录功能; 3)登录后获取自定义信息。...3、修改网站项目的urls.py文件,增加新应用路由 ? 4、修改apps\users\models.py文件,增加新模型 ?...5、在PyCharm中执行manage.py命令,使得新模型生效 ? ? 6、修改apps\users\admin.py文件,写入下面的代码,使得管理页面能够管理新建模型 ?...文件内容与前面课程中创建一样。...12、回到管理页面,增加自定义用户,并选择前面步骤创建认证用户 ? ? 13、运行网站,打开登录页面,使用前面步骤创建用户登录 ? 14、登录成功,界面如图所示 ?

1.4K20

第 03 篇:创建 Django 博客数据库模型

,主要是涉及字段更多。...body = models.TextField() # 这两个列分别表示文章创建时间和最后一次修改时间,存储时间字段用 DateTimeField 类型。...且自 django 2.0 以后,ForeignKey 必须传入一个 on_delete 参数用来指定当关联 # 数据被删除时,被关联数据行为,我们这里假定当某个分类被删除时,该分类下全部文章也同时被删除...且自 django 2.0 以后,ForeignKey 必须传入一个 on_delete 参数用来指定当关联数据被删除时,被关联数据行为,我们这里假定当某个分类被删除时,该分类下全部文章也同时被删除...理解多对一和多对多两种关联关系 我们分别使用了两种关联数据库表形式:ForeignKey和 ManyToManyField。 ForeignKey ForeignKey 表明一种一对多关联关系。

55140

Django官方文档小结(一) -- Models模型

Django 关系字段 本文主要内容是关于Django框架中models知识小结 #1 环境 Python3.7.3 Django==2.0.7 #2 字段 #2.1 一对多(ForeignKey)...(to,on_delete,** options) # to : 关联类(必填) # on_delete : 与"关联表"关系(必填) #2.2 自关联 models.ForeignKey(to='...与之关联值设置为可执行对象返回值,设置:models.SET(可执行对象) #2.4 数据库表示 在生成数据库时,Django追加"_id"字段名称来创建其数据库列名,可以通过指定显式更改此内容db_column...正向查找 (Entry->Blog) 存放外键表(Entry)->查->被关联表(Blog) >>> e = models.Entry.objects.get(id=1) >>> e.blog 反向查找 (Blog->Entry) 关联表(Blog)->查->存放外键表(Entry) >>> b = models.Blog.objects.get(id=1) >

75420

django 1.8 官方文档翻译: 2-1-1 模型语法(初稿)

网站:http://python.usyiyi.cn/django/index.html 模型 模型是有关你数据,简单、确定信息源。它包含了你所储存数据一些必要字段和行为。...通常来说,每个模型都对应数据库中一张表。 基础: 每个模型都是django.db.models.Model类子类。 模型每个属性都表示数据库中一个字段。...ForeignKey 需要一个位置参数:与该 model 关联类。...建议你用被关联 model 小写名称做为 ForeignKey 字段命名 (上例中,我们就是以manufacturer 小写做为命名)。...toppings = models.ManyToManyField(Topping) 和使用 ForeignKey 一样,你也可以创建 递归关联关系(recursive relationships)

3.1K30

Django模型

Django模型 Django模型定义在models.py文件中。模型是MVT中M,也相当于MVC中M。 在Django中,模型必须继承自Model类。...django会为表创建自动增长主键列,每个模型只能有一个主键列,如果使用选项设置某属性为主键列后django不会再创建自动增长主键列。...下面是Django中常用字段类型详情 字段类型 类型 说明 BigAutoField 自动增长BigIntegerField,通常不用指定,不指定时Django会自动创建属性名为id自动增长属性...外键:通过使用models.ForeignKey来设置外键,ForeignKey第一个参数是要关联模型类名,第二个参数是on_delete。...这是因为Django会默认指定另外一张表id作为关联字段。如下图所示: 可以看到peopleinfo这张表中外键名称是book_id

1.9K20

Django ORM 多表操作

目录 Django ORM 多表操作 表模型 表关系 创建模型 逆向到表模型 插入数据 ORM 添加数据(添加外键) 一对多(外键 ForeignKey) 一对一 (OneToOneFeild) 多对多...ORM 多表操作 表模型 图书表 出版社表 作者表 作者详情表 表关系 一对一:一对一推荐建在查询频率高一方 一对多:外键字段建在多一方 多对多:外键字段建在查询频率多一方,在Django第三张表不需要创建...,自动创建 ps:外键字段不需要写表名_id后面的_id,ORM创建时候自动添加了_id,以及外键以虚拟字段形式存在 创建模型 '''models.py''' from django.db import...6、若有模型类存在外键,创建数据时,要先创建外键关联模型数据,不然创建包含外键模型数据时,外键关联模型数据会找不到 逆向到表模型 插入数据 ps:插入几条数据方便操作 ORM...给书籍关联出版社字段 pulish_id 传出版社对象 id import os def main(): os.environ.setdefault('DJANGO_SETTINGS_MODULE

1.7K20

创建 Django 博客数据库模型

这样,Django 就可以把这个类翻译成数据库操作语言,在数据库里创建一个名为 category 表格,这个表格一个列名为 name。还有一个列 id,Django 则会自动创建。...,主要是涉及字段更多。...body = models.TextField() # 这两个列分别表示文章创建时间和最后一次修改时间,存储时间字段用 DateTimeField 类型。...author = models.ForeignKey(User) 博客模型代码代码详解 首先是 Category 和 Tag 类,它们均继承自 model.Model 类,这是 Django 规定。...理解多对一和多对多两种关联关系 我们分别使用了两种关联数据库表形式:ForeignKey 和 ManyToManyField。 ForeignKey ForeignKey 表明一种一对多关联关系。

1.3K60

00x: Django models.Model详解

CREATE TABLE这个SQL语句在这个例子中PostgreSQL来实现, 使用models 一旦你定义好了你模型,你需要告诉Django你将要使用这些models。...字段 model最重要部分而且也是model所需基础部分是它定义数据库字段集合。字段属性来定义。...如果你想声明一个典型主键,只需要在对应字段选项中设置primary_key=True。若Django看到你显式声明了自定义主键,那么Django就不会为你创建一个自增id字段。...每个模型需要明确一个字段作为主键。 verbose字段 除了ForeignKey,ManyToManyField和OneToOneField,每个字段都有一个可选设置参数:详细。...ForeignKey需要一个位置指示参数:当前model相关联class类名。 例如,Car 和Manufacturer(制造商)。

1.6K20
领券