'function' object has no attribute 'objects'
这个错误发生在views.py内函数名和model名重名的情况:
由于python获得了第一行函数worker,第二行的数据表worker就被自动重写为函数,则其原有的objects.all()函数就不能使用。def worker(request): table=worker.objects.all() return render(request,'table.html',{'table':table})
须改为:
def worker_list(request):
table=worker.objects.all()
return render(request,'table.html',{'table':table})
coercing to Unicode: need string or buffer, list found
类型错误,发生在models.py内返回函数的返回类型写错时。
class score(models.Model):
worker_id=models.ForeignKey(worker)
score=models.IntegerField()
def __unicode__(self):
return [self.worker_id,self.score]
从上代码看出,return的是一组list,但函数写为__unicode__(),则python返回的时候会发生类型错误。
我是将其改为:
class score(models.Model):
worker_id=models.ForeignKey(worker)
score=models.IntegerField()
def __list__(self):
return [self.worker_id,self.score]
但这个在页面上现实还是有问题的,不会认出list列表内的元素,而是直接返回一个list object,这个在以后会进一步改进。