Skip to main content
 首页 » 编程设计

python之django 管理应用程序错误(带有属性字段的模型): global name 'full_name' is not defined

2025年05月04日27del

这是我的模型:

class Author(models.Model): 
 
    first_name = models.CharField(max_length=200) 
    last_name = models.CharField(max_length=200) 
    middle_name = models.CharField(max_length=200, blank=True) 
 
    def __unicode__(self): 
        return full_name 
 
    def _get_full_name(self): 
        "Returns the person's full name." 
        if self.middle_name == '': 
            return "%s %s" % (self.first_name, self.last_name) 
        else: 
            return "%s %s %s" % (self.first_name, self.middle_name, self.last_name) 
    full_name = property(_get_full_name) 

一切都很好,除了当我进入管理界面时,我看到了

TemplateSyntaxError 在/bibbase2/admin/bibbase2/author/ 渲染时捕获异常:未定义全局名称“full_name”

内置的管理应用程序似乎不适用于属性字段。我的代码有问题吗?

请您参考如下方法:

def __unicode__(self): 
        return full_name 

应该是:

def __unicode__(self): 
        return self.full_name