【问题标题】:Ignore calling of __unicode(self) in django忽略在 Django 中调用 __unicode(self)
【发布时间】:2014-03-08 11:43:26
【问题描述】:
class Analysis(models.Model):
    AnalysisID = models.IntegerField(primary_key=True)
    AnalysisName = models.CharField(max_length=50,null=False)

    def __unicode__(self):
        return self.AnalysisName

我想在我的模板中使用Analysis.AnalysisID,但是当我引用Analysis.AnalysisID 时,行对象返回Analysis.AnalysisName 而不是Analysis.AnalysisID

P.S.:我不想删除 Analysis.__unicode__(),因为管理员需要它。

【问题讨论】:

  • 不,这不会发生。请显示视图和模板。
  • 当我调用 Analysisobject.AnalysisID 时,返回 AnalysisName 而不是 AnalysisID 是什么意思?您可以向我们展示您在执行此操作时使用的代码吗?

标签: python django unicode self


【解决方案1】:

您需要在模型类中定义方法__unicode__,如下所示:

class Analysis(models.Model):
     AnalysisID = models.IntegerField(primary_key=True)
     AnalysisName = models.CharField(max_length=50,null=False)

    def __unicode__(self):
        return self.AnalysisName

【讨论】:

  • 我认为这可能是提问者的复制粘贴错误。
  • @user3078733 您的代码是否在Analysis 内部或外部定义了__unicode__()
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-03-28
  • 2017-12-15
  • 2011-05-31
  • 1970-01-01
  • 2011-04-22
  • 2012-09-09
  • 2017-09-05
相关资源
最近更新 更多