简体   繁体   English

Django 给一个字段默认值 = pk

[英]Django give a field default value = pk

I'm trying to give a field in Django a default value = value of pk, is this possible?我正在尝试为 Django 中的字段提供默认值 = pk 值,这可能吗?

I've found an old question about giving a field default = value of another field but it doesn't really help when working with pk value: How do I set default field value to value of other field in a Django model?我发现了一个关于给一个字段默认值 = 另一个字段的值的老问题,但在使用 pk 值时它并没有真正帮助: 如何将默认字段值设置为 Django model 中其他字段的值?

Basicly is something like this possible using pk instead of "name" variable?基本上这样的事情可能使用 pk 而不是“名称”变量吗? :

class MyModel(models.Model):
name = models.CharField(max_length=50)
fullname = models.CharField(max_length=100,default=name)

def clean(self):
  self.fullname=name

Thanks.谢谢。

Django creates auto primary keys, the model will have a field called "id" and it is also called "pk" Django 创建自动主键,model 将有一个名为“id”的字段,也称为“pk”

If you access your database you'll be able to see it.如果您访问您的数据库,您将能够看到它。

SQL 数据库截图

If you want to set your own primary key you will need to do something like:如果要设置自己的主键,则需要执行以下操作:

custompk = models.someField(primary_key=True)

As your question is vague I've attempted to answer to the best of my ability.由于您的问题含糊不清,我已尽力回答。

If you are trying to access a PK/ID of an object in a view let me know and I can help with that as well.如果您尝试在视图中访问 object 的 PK/ID,请告诉我,我也可以提供帮助。 :) :)

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM