回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<h2><strong>更新:</strong></h2>
<p>使用“item15=Anhang.objects.filter(KN=item.KN)”我得到<strong>错误:</strong>异常类型:AttributeError
异常值:<br/>
“QuerySet”对象没有属性“\u meta”</p>
<p>views.py</p>
<pre><code>@login_required()
def anhang_view(request, id=None):
contextoo = {}
item = Kunden.objects.get(id=id)
kontaktform_form = KontaktForm(request.POST or None, instance=item)
creatorform_form = CreateANform()
contextoo['creatorform_form'] = creatorform_form
if Kunden.objects.filter(KN=item.KN).exists():
item14 = Kunden.objects.get(KN=item.KN)
editkontakto_form = InfoKontaktoForm(request.POST or None, instance=item14)
contextoo['editkontakto_form'] = editkontakto_form
if Anhang.objects.filter(KN=item.KN).exists():
item15 = Anhang.objects.filter(KN=item.KN)
ANform_form = ANform(request.POST or None, instance=item15)
contextoo['ANform_form'] = ANform_form
if request.method == 'POST':
creatorform_form = CreateANform(request.POST)
if creatorform_form.is_valid():
cre = creatorform_form.save(commit=True)
cre.save()
return redirect('/Verwaltung/KontaktAnlegen')
else:
return render(request, 'blog/anhang.html', contextoo)
</code></pre>
<p>错误:</p>
<blockquote>
<p>'QuerySet' object has no attribute '_meta' Request Method: GET Request
URL: <a href="http://127.0.0.1:8000/Verwaltung/Anhang/10" rel="nofollow noreferrer">http://127.0.0.1:8000/Verwaltung/Anhang/10</a> Django Version: 3.0.1
Exception Type: AttributeError Exception Value: 'QuerySet' object has
no attribute '_meta'</p>
</blockquote>
<p>anhang.html</p>
<pre><code> .
.
.
{% if ANform_form %}
{% for obj in ANform_form.instance %}
<table class="table" width="100%" border="0" cellspacing="0" cellpadding="0">
<thead class="thead-light">
<tr>
<td width="11%" border="0" cellspacing="0" cellpadding="0">
<b>
{% csrf_token %}
{{ obj.Thema }}
</b>
</td>
<td width="15%" border="0" cellspacing="0" cellpadding="0">Username</td>
<td width="19%" border="0" cellspacing="0" cellpadding="0">Password</td>
<td width="18%" border="0" cellspacing="0" cellpadding="0">E-Mail</td>
<td width="37%" border="0" cellspacing="0" cellpadding="0">Anhang</td>
<td>
</td>
<td></td>
</tr>
</thead>
<tbody>
<td></td>
<td>
{% csrf_token %}
{{ obj.Username }}
</td>
<td>
{% csrf_token %}
{{ obj.Password }}
</td>
<td>
{% csrf_token %}
{{ obj.Email }}
</td>
<td>
{% csrf_token %}
{{ obj.Anhang }}
</td>
<td>
<a href=""><button type="button" class="btn btn-danger">Löschen</button></a> </td>
</td>
</tbody>
</table>
{% endfor %}
{% endif %}
</code></pre>
<p>models.py</p>
<pre><code>class Anhang(models.Model):
KN = models.IntegerField(unique=False)
Thema = models.CharField(max_length=100, blank=True, unique=False)
Username = models.CharField(max_length=100, blank=True, unique=False)
Password = models.CharField(max_length=100, blank=True, unique=False)
Email = models.CharField(max_length=100, blank=True, unique=False)
Anhang = models.CharField(max_length=250, blank=True, unique=False)
</code></pre>
<p>forms.py</p>
<pre><code>class ANform(forms.ModelForm):
class Meta:
model = Anhang
fields = ['KN', 'Thema', 'Username', 'Password', 'Email', 'Anhang']
required = ()
labels = {
'KN': 'KN',
'Thema': 'Thema:',
'Username': 'Username',
'Password': 'Password',
'Email': 'Email',
'Anhang': 'Anhang',
}
class CreateANform(forms.ModelForm):
class Meta:
model = Anhang
fields = ['KN', 'Thema', 'Username', 'Password', 'Email', 'Anhang']
required = ()
labels = {
'KN': 'KN',
'Thema': 'Thema:',
'Username': 'Username',
'Password': 'Password',
'Email': 'Email',
'Anhang': 'Anhang',
}
class KontaktForm(forms.ModelForm):
def clean_kundennummer(self):
KN = self.cleaned_data['KN']
if Kunden.objects.filter(KN_iexact=KN).exists():
raise forms.ValidationError('Diese Kundennummer ist bereits vergeben')
return KN
class Meta:
model = Kunden
fields = ['KN', 'Anrede', 'Name', 'Vorname', 'Infos']
required = ()
labels = {
'KN': 'Kundennummer',
'Anrede': 'Anrede',
'Name': 'Name',
'Vorname': 'Vorname',
'Infos': 'Infos',
}
class InfoKontaktoForm(forms.ModelForm):
def clean_kundennummer(self):
KN = self.cleaned_data['KN']
if Kunden.objects.filter(KN_iexact=KN).exists():
raise forms.ValidationError('Diese Kundennummer ist bereits vergeben')
return KN
class Meta:
model = Kunden
fields = ['KN', 'Anrede', 'Name', 'Vorname']
required = ()
labels = {
'KN': 'Kundennummer:',
'Anrede': 'Anrede:',
'Name': 'Name:',
'Vorname': 'Vorname',
}
</code></pre>
<p>我该如何解决这个问题?已尝试使用“获取列表”或“404”&;Anhang.objects.all()</p>