Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 为什么get\u field\u name\u display()不起作用?_Python_Django - Fatal编程技术网

Python 为什么get\u field\u name\u display()不起作用?

Python 为什么get\u field\u name\u display()不起作用?,python,django,Python,Django,我有一些使用的代码 下面是发生的事情: class Obj(models.model): CHOICES = ((0, 'Foo'), (1, 'Bar'), (2, 'Baz')) x = models.IntegerField(choices=CHOICES) description = models.CharField(max_length=200) ... obj = Obj(x=0) obj.description

我有一些使用的代码

下面是发生的事情:

class Obj(models.model):
  CHOICES = ((0, 'Foo'),
             (1, 'Bar'),
             (2, 'Baz'))
  x = models.IntegerField(choices=CHOICES)
  description = models.CharField(max_length=200)
  ...


obj = Obj(x=0)
obj.description = obj.get_x_display() + ' ' + obj.id
obj.description # Expected: 'Foo 21'
此代码在shell中运行良好,但是当代码在开发服务器中运行时,结果描述为
021
。发生了什么事

请注意,在调用
get\u x\u display()
之前保存对象并不能解决这一问题。从数据库中获取对象的新副本确实如此,但这太可怕了,我更不愿意这样做。

尝试使用

class Obj(models.model):
    CHOICES = ((0, 'Foo'),
         (1, 'Bar'),
         (2, 'Baz'))
    x = models.IntegerField(choices=CHOICES)
    description = models.CharField(max_length=200)



   @property
   def nu(self):
       return self.get_x_display()
在:obj.description=obj.nu+''+obj.id`

中尝试使用

class Obj(models.model):
    CHOICES = ((0, 'Foo'),
         (1, 'Bar'),
         (2, 'Baz'))
    x = models.IntegerField(choices=CHOICES)
    description = models.CharField(max_length=200)



   @property
   def nu(self):
       return self.get_x_display()

在:obj.description=obj.nu+''+obj.id`

中,您使用的是哪个Django版本?只是想知道如何添加
obj.get\u\u display()++'+obj.id
而不使用
TypeError
。您使用的是哪个Django版本?只是想知道如何添加
obj.get\u display()+'+obj.id而不使用
TypeError