Django 插入数据


添加记录

在中创建的 Members 表上一章是空的。

我们将使用 Python 解释器(Python shell)向其中添加一些成员。

要打开 Python shell,请键入以下命令:

py manage.py shell

现在我们在 shell 中,结果应该是这样的:

Python 3.9.2 (tags/v3.9.2:1a79785, Feb 19 2021, 13:44:55) [MSC v.1928 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
(InteractiveConsole)
>>>

在底部,三个之后>>>写下以下内容:

>>> from members.models import Member

按 [enter] 并写入以下内容以查看空的 Member 表:

>>> Member.objects.all()

这应该给你一个空的 QuerySet 对象,如下所示:

<QuerySet []>

QuerySet 是数据库中数据的集合。

阅读有关查询集的更多信息Django 查询集章节。

通过执行以下两行向表中添加一条记录:

>>> member = Member(firstname='Emil', lastname='Refsnes')
>>> member.save()

执行以下命令查看 Member 表是否有成员:

>>> Member.objects.all().values()

希望结果如下所示:

<QuerySet [{'id': 1, 'firstname': 'Emil', 'lastname': 'Refsnes'}]>

添加多条记录

您可以通过创建列表来添加多条记录Member对象,并执行.save()在每个条目上:

>>> member1 = Member(firstname='Tobias', lastname='Refsnes')
>>> member2 = Member(firstname='Linus', lastname='Refsnes')
>>> member3 = Member(firstname='Lene', lastname='Refsnes')
>>> member4 = Member(firstname='Stale', lastname='Refsnes')
>>> member5 = Member(firstname='Jane', lastname='Doe')
>>> members_list = [member1, member2, member3, member4, member5]
>>> for x in members_list:
>>>   x.save()

现在 Member 表中有 6 个成员:

>>> Member.objects.all().values()
<QuerySet [{'id': 1, 'firstname': 'Emil', 'lastname': 'Refsnes'},
{'id': 2, 'firstname': 'Tobias', 'lastname': 'Refsnes'},
{'id': 3, 'firstname': 'Linus', 'lastname': 'Refsnes'},
{'id': 4, 'firstname': 'Lene', 'lastname': 'Refsnes'},
{'id': 5, 'firstname': 'Stale', 'lastname': 'Refsnes'},
{'id': 6, 'firstname': 'Jane', 'lastname': 'Doe'}]>