【发布时间】:2019-10-24 16:11:29
【问题描述】:
我有一个很可能很傻但我无法解决的问题,执行视图功能后出现属性错误
在我的 Django 应用程序的 degu 模式下,我得到:
AttributeError
Exception Value:
'Client' object has no attribute 'get'
(...)
Error during template rendering
In template (...)Comptabo/templates/base.html, error at line 0
当我点击索引页面中的客户姓名时。我已经尝试了很多东西并查看了相应的主题以及文档,我不明白错误来自哪里。这不是与模板或urls文件有关的问题..如果有人有想法
views.py 中我的客户端函数:
def client(request, id = 0):
if id:
client = Client.objects.get(id = id)
form = ClientForm(client)
factures = Facture.objects.filter(client = client)
devis = Devis.objects.filter(client = client)
form_fact = FactureForm()
form_dev = DevisForm()
return render(request,'client.html',{'client' : client
, 'form' : form, 'factures': factures, 'devis': devis
, 'formf': form_fact,'formd': form_dev})
else:
return redirect('/index')
models.py 中我的班级客户:
class Client(models.Model):
nom = models.CharField(max_length = 30)
adresse_voie = models.CharField(max_length = 30)
adresse_code = models.IntegerField()
adresse_ville = models.CharField(max_length = 30)
adresse_pays = models.CharField(max_length = 30, default = "France")
tel = models.CharField(max_length = 12)
fax = models.CharField(max_length = 12, blank = True)
mail = models.EmailField()
def __str__(self):
return self.nom
最糟糕的是函数Client.objects.get(id = id) 可以工作,因为在局部变量中我的客户端变量包含请求的对象:
client = Client: ICE
devis = QuerySet []
factures = QuerySet []
form = ClientForm bound=True, valid=True, fields=(nom;adresse_voie;
adresse_code;adresse_ville;adresse_pays;tel;fax;mail)
form_dev = DevisForm bound=False, valid=Unknown, fields=(prestations;total_HT;date)
form_fact = FactureForm bound=False, valid=Unknown, fields=(prestations;total_HT;paye;date)
id = 1
request = WSGIRequest: GET '/client/1/'
【问题讨论】: