English 中文(简体)
如何在Django获得公正创记录的识别资料?
原标题:How to get the ID of a just created record in Django?

我把Django1.3用于我的一个项目,我需要获得数据库中刚刚保存的记录。

下面的守则就是在数据库中保存记录:

n = MyData.objects.create(record_title=title, record_content=content)
n.save()

记录索引只是节省了自动化设备。 是否有办法获得这一身份识别资料,并在我的法典中加以使用?

最佳回答

使用<代码>n.id 在储蓄之后。

见“

问题回答

页: 1

To quote "Model.pk":

Regardless of whether you define a primary key field yourself, or let Django supply one for you, each model will have a property called pk. It behaves like a normal attribute on the model, but is actually an alias for whichever attribute is the primary key field for the model. You can read and set this value, just as you would for any other attribute, and it will update the correct field in the model.

将以你的模型自动更新该索引,紧接在n.save(下,您可读到n.id,并将有人居住。

搬走储蓄()和直接取花板:

n = MyData.objects.create(record_title=title, record_content=content)
n.pk

If someone reading this question and after check the other answers still having problems accessing the id after the creation of the object. Be sure you don t define id as an Integer in your model. If you decide to declare it anyways, use Autofield but you don t need to, It is for free with models.Model

#No
class TestModel(models.Model):
    id = models.IntegerField(primary_key=True)
    something...


#Ok
class TestModel(models.Model):
    id = models.AutoField(primary_key=True)
    something...

#Ok
class TestModel(models.Model):
    something...

if you do define id as Integer, TestModel.objects.create( or with save() will return None.

我在获得补贴方面也存在类似的问题。 在Django 3.0.5,这是我如何获得补贴。 您的榜样和变量名称如下:

instance = n.save()
# return the id
instance[0].id 

以上变量是清单。 在Django 3 采用上述方法获得补助。

答案在使用<代码>modelformset_eqy时适用。 如





相关问题
How to get two random records with Django

How do I get two distinct random records using Django? I ve seen questions about how to get one but I need to get two random records and they must differ.

Moving (very old) Zope/Plone Site to Django

I am ask to move data from a (now offline) site driven by Plone to a new Django site. These are the version informations I have: Zope Version (unreleased version, python 2.1.3 ) Python Version 2.1....

Can Django models use MySQL functions?

Is there a way to force Django models to pass a field to a MySQL function every time the model data is read or loaded? To clarify what I mean in SQL, I want the Django model to produce something like ...

Flexible pagination in Django

I d like to implement pagination such that I can allow the user to choose the number of records per page such as 10, 25, 50 etc. How should I go about this? Is there an app I can add onto my project ...

is it convenient to urlencode all next parameters? - django

While writing code, it is pretty common to request a page with an appended "next" query string argument. For instance, in the following template code next points back to the page the user is on: &...

Pragmatically adding give-aways/freebies to an online store

Our business currently has an online store and recently we ve been offering free specials to our customers. Right now, we simply display the special and give the buyer a notice stating we will add the ...

热门标签