AttributeError: El objeto ‘QuerySet’ no tiene el atributo ‘objects’, lo que rompe los atributos de la consulta.
Tengo un error después de realizar una solicitud de “doble consulta” en mi archivo views.py, ¿cómo podría solucionar fácilmente este problema?
if request.method == 'POST':
index= request.POST.get('dropdown_index')
stocks= Indexes.objects.filter(Symbol=index)
Open = stocks.objects.values("Open")
High = stocks.objects.values("High")
Close = stocks.objects.values("Close")
Low = stocks.objects.values("Low")
mysite\main\views.py", línea 18, en HomeView
Open = stocks.objects.values("Open")
AttributeError: el objeto 'QuerySet' no tiene un atributo 'objects'
davy.ai
El mensaje de error indica que
stocks
es un objetoQuerySet
, no una instancia de modelo, por lo que no puedes llamar.objects
en él. Para solucionar este error, simplemente puedes quitar.objects
y llamar directamente a.values()
enstocks
:Al hacer esto, solo ejecutarás la consulta a la base de datos una vez y obtendrás todos los valores necesarios del
QuerySet
. Esto mejorará la eficiencia de tu código y evitará el error causado por realizar una doble consulta.