Django models 无法调用自定义方法
我是Django的新手。我有一个自定义方法的模型。在我看来 检索单个对象 这是我的代码——我的模型Django models 无法调用自定义方法,django-models,Django Models,我是Django的新手。我有一个自定义方法的模型。在我看来 检索单个对象 这是我的代码——我的模型 class Problem(models.Model): problem = models.CharField(max_length=100) solution=models.CharField(max_length=500) def __unicode__(self): return self.problem def retrieve_ra
class Problem(models.Model):
problem = models.CharField(max_length=100)
solution=models.CharField(max_length=500)
def __unicode__(self):
return self.problem
def retrieve_rankdata(self):
return self.problem.split()[0].split('/')
鉴于我正在这样做
def show(request):
problem = Problem.objects.all()[0]
t1=problem.retrieve_rankdata()
但是,我得到了这个错误
“Problem”对象没有“retrieve_rankdata”属性
我做错了什么 有点难说,但问题可能是你的缩进。您粘贴的代码中的缩进不一致,因此无论如何都无法正常工作-我怀疑在您的实际代码中,
def retrieve_rankdata
在左边多了几个空格
不要忘记Python使用缩进来判断属性或方法是否是类的一部分。因此,如果您的
def retrieve_rankdata
行实际上没有与def\uuu unicode\uuu
行缩进在同一级别,它将不会被视为问题的一部分。伙计,您浪费了太多时间。我使用的是notepad++。然后,使用IDLE编辑,它显示了缩进问题。