嗨,我有一个 django 项目,上面的错误是 models.py
class Display(models.Model) :
url=models.URLField(unique=True)
text = models.CharField(max_length=150)
class Display_Data(models.Model) :
displays = models.ManyToManyField(Display,related_name='display_data')
users= models.ManyToManyField(User)
choosenum=models.IntegerField()
puplish_date =models.DateTimeField(default=datetime.now)
and this is views.py
check_url_exists(url_to_check):
try:
countArray= []
# محاولة استرداد سجل بناءً على الرابط المعطى
display_obj = Display.objects.get(url=url_to_check)
for i in range(1, 6):
# حساب عدد السجلات where choosenum = i
count = Display_Data.objects.filter(display_data__url=url_to_check, choosenum=i).count()
print(count)# إضافة عدد السجلات إلى القائمة
countArray.append(count)
return countArray # الرابط موجود في قاعدة البيانات
except Display.DoesNotExist:
countArray= [0,0,0,0,0]
return countArray
def display_video(request, url):
# تشكيل الـ URL الكامل لإطار الفيديو على YouTube
embed_url = f"https://www.youtube.com/embed/{url}"
full_url = f"https://www.youtube.com/watch?v={url}"
soup = BeautifulSoup(requests.get(full_url).content, "html.parser")
title = soup.title.text
# استخدم نموذج "display_data"
countArry=check_url_exists(embed_url)
# استخدم "Count" لحساب عدد السجلات
# طباعة النتيجة
this is templete who is include with the templete above
<div class="container mt-5">
<div class="d-flex justify-content-start">>
<!-- زر "نجحت" -->
<button type="submit" name="CHOOSE" value="1" class="btn btn-success mr-2">{{carry_0}} نجحت</button>
<!-- زر "فشلت" -->
<button type="submit" name="CHOOSE" value="2" btn btn-danger mr-2">{{carray_1}}فشلت</button>
<!-- زر "تحتاج إلى مال" -->
<button type="submit" name="CHOOSE" value="3" class="btn btn-warning mr-2">تحتاج إلى مال{{carray_2}}</button>
<!-- زر "تحتاج إلى أدوات" -->
<button type="submit" name="CHOOSE" value="4" btn btn-info mr-2">{{carray_3}}تحتاج إلى أدوات</button>
<!-- زر "مؤجل" -->
<button type="submit" name="CHOOSE" value="5" class="btn btn-secondary">{{carray_4}}مؤجل</button>
<!-- زر "اخر نجاح" -->
<button type="button" class="btn btn-success mr-2">اخر نجاح</button>
<!-- زر "اخر فشل" -->
<button type="button" class="btn btn-danger mr-2">اخر فشل</button>
</div>
我在框架中显示一个YouTube,我尝试计算某种类似成功失败的额外结果,我制作了成功1和失败2额外的内容,用户可以制作它并将其显示在模板上,并且出现了此错误
您的 Display_Data 模型中似乎没有定义名为 display_data 的字段。相反,您有一个名为 displays 的字段。
我建议的解决方案 尝试在视图中的 check_url_exists 函数中更新查询以使用正确的字段名称。
替换这个
count = Display_Data.objects.filter(display_data__url=url_to_check, choosenum=i).count()
与
**count = Display_Data.objects.filter(displays__url=url_to_check, choosenum=i).count()**