search funtion not working
def search(request):
allprod=[]
searched_str=request.GET.get('search','') #string he,customer jo search krega vo yha aayega
n=len(product.objects.filter(Q(pname=searched_str) | Q(cat=searched_str)))
#length of
fetched=product.objects.filter(Q(pname=searched_str) | Q(cat=searched_str) ).values()
for i in fetched[0].values():
allprod.append(i)
slide=n//4 + ceil((n/4)-(n//4))
allprod.append(slide)
print(allprod)
data={"allprod":allprod,"msg":""}
if n==0:
data['msg']="please searvh relevent product"
return render(request,"shop/search.html",data)
else:
return render(request,"shop/search.html",data)
imp points
Python 3.6.9 (default, Jul 17 2020, 12:50:27)
Type 'copyright', 'credits' or 'license' for more information
IPython 7.16.1 -- An enhanced Interactive Python. Type '?' for help.
In [1]: from shop.models import product
In [2]: sata=product.objects.filter(pname=a and pdesc=b)
File "<ipython-input-2-d961dd8cdd06>", line 1
sata=product.objects.filter(pname=a and pdesc=b)
^
SyntaxError: invalid syntax
In [3]: a="sabun"
In [4]: b="sss"
In [5]: sata=product.objects.filter(pname=a pdesc=b)
File "<ipython-input-5-25baaab8553d>", line 1
sata=product.objects.filter(pname=a pdesc=b)
^
SyntaxError: invalid syntax
In [6]: from django.db.models import Q
In [7]: sata=product.objects.filter(Q(pname=a) | Q( pdesc=b))
In [8]: sata
Out[8]: <QuerySet [<product: sabun>]>
In [9]: sata=product.objects.filter(Q(pname=a) | Q( pdesc=b)).values()
In [10]: sata
Out[10]: <QuerySet [{'id': 2, 'pname': 'sabun', 'pdesc': 'kapde dolo', 'cat': 'house hold', 'subcat': 'tikiya', 'pr': 5, 'image': 'shop/images/download.jpeg'}]>
In [11]: sata=product.objects.all()
In [12]: sata
Out[12]: <QuerySet [<product: watch>, <product: sabun>, <product: munch>, <product: BED>, <product: aalu>, <product: apple>, <product: avacardo>, <product: peach>, <product: stoberry>, <product: hra phal>, <product: jackfruit>, <product: guava>, <product: guava>, <product: grossberry>, <product: custard apple>, <product: coconus>]>
In [13]: sata=product.objects.filter(Q(pname=a) | Q( pdesc=b)).values()
In [14]: sata
Out[14]: <QuerySet [{'id': 2, 'pname': 'sabun', 'pdesc': 'kapde dolo', 'cat': 'house hold', 'subcat': 'tikiya', 'pr': 5, 'image': 'shop/images/download.jpeg'}]>
In [15]: for k,v in sata:
...: print(sata[k])
...:
---------------------------------------------------------------------------
ValueError Traceback (most recent call last)
<ipython-input-15-86f49d070049> in <module>
----> 1 for k,v in sata:
2 print(sata[k])
3
ValueError: too many values to unpack (expected 2)
In [16]:
In [16]: for k in sata:
...: print(sata[k])
...:
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-16-4aca709f236d> in <module>
1 for k in sata:
----> 2 print(sata[k])
3
~/.local/lib/python3.6/site-packages/django/db/models/query.py in __getitem__(self, k)
297 raise TypeError(
298 'QuerySet indices must be integers or slices, not %s.'
--> 299 % type(k).__name__
300 )
301 assert ((not isinstance(k, slice) and (k >= 0)) or
TypeError: QuerySet indices must be integers or slices, not dict.
In [17]: sata
Out[17]: <QuerySet [{'id': 2, 'pname': 'sabun', 'pdesc': 'kapde dolo', 'cat': 'house hold', 'subcat': 'tikiya', 'pr': 5, 'image': 'shop/images/download.jpeg'}]>
In [18]: sata.id
---------------------------------------------------------------------------
AttributeError Traceback (most recent call last)
<ipython-input-18-642699cd3669> in <module>
----> 1 sata.id
AttributeError: 'QuerySet' object has no attribute 'id'
In [19]: for i in sata.values():
...: print(i)
...:
{'id': 2, 'pname': 'sabun', 'pdesc': 'kapde dolo', 'cat': 'house hold', 'subcat': 'tikiya', 'pr': 5, 'image': 'shop/images/download.jpeg'}
In [20]: list(sata)
Out[20]:
[{'id': 2,
'pname': 'sabun',
'pdesc': 'kapde dolo',
'cat': 'house hold',
'subcat': 'tikiya',
'pr': 5,
'image': 'shop/images/download.jpeg'}]
In [21]: sata
Out[21]: <QuerySet [{'id': 2, 'pname': 'sabun', 'pdesc': 'kapde dolo', 'cat': 'house hold', 'subcat': 'tikiya', 'pr': 5, 'image': 'shop/images/download.jpeg'}]>
In [22]: sata=product.objects.filter(pname=a)
In [23]: sata
Out[23]: <QuerySet [<product: sabun>]>
In [24]: sata=product.objects.filter(Q(pname=a) | Q( pdesc=b)).values()
In [25]: sata
Out[25]: <QuerySet [{'id': 2, 'pname': 'sabun', 'pdesc': 'kapde dolo', 'cat': 'house hold', 'subcat': 'tikiya', 'pr': 5, 'image': 'shop/images/download.jpeg'}]>
In [26]: sata.values
Out[26]: <bound method QuerySet.values of <QuerySet [{'id': 2, 'pname': 'sabun', 'pdesc': 'kapde dolo', 'cat': 'house hold', 'subcat': 'tikiya', 'pr': 5, 'image': 'shop/images/download.jpeg'}]>>
In [27]: sata.values()
Out[27]: <QuerySet [{'id': 2, 'pname': 'sabun', 'pdesc': 'kapde dolo', 'cat': 'house hold', 'subcat': 'tikiya', 'pr': 5, 'image': 'shop/images/download.jpeg'}]>
In [28]: sata.values().id
---------------------------------------------------------------------------
AttributeError Traceback (most recent call last)
<ipython-input-28-497233d4f48a> in <module>
----> 1 sata.values().id
AttributeError: 'QuerySet' object has no attribute 'id'
In [29]: sata.values()["id"]
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-29-3b8e5b19c5f7> in <module>
----> 1 sata.values()["id"]
~/.local/lib/python3.6/site-packages/django/db/models/query.py in __getitem__(self, k)
297 raise TypeError(
298 'QuerySet indices must be integers or slices, not %s.'
--> 299 % type(k).__name__
300 )
301 assert ((not isinstance(k, slice) and (k >= 0)) or
TypeError: QuerySet indices must be integers or slices, not str.
In [30]: sata.values()[0]
Out[30]:
{'id': 2,
'pname': 'sabun',
'pdesc': 'kapde dolo',
'cat': 'house hold',
'subcat': 'tikiya',
'pr': 5,
'image': 'shop/images/download.jpeg'}
In [31]: sata.values()[0].id
---------------------------------------------------------------------------
AttributeError Traceback (most recent call last)
<ipython-input-31-458028d2ab70> in <module>
----> 1 sata.values()[0].id
AttributeError: 'dict' object has no attribute 'id'
In [32]: sata.values()[0].["id"]
File "<ipython-input-32-a0d3ceaef57e>", line 1
sata.values()[0].["id"]
^
SyntaxError: invalid syntax
In [33]: sata.values()[0]["id"]
Out[33]: 2
In [34]: sata.values()[0]["id"]
...:
Out[34]: 2
In [35]: sata.values()[0]
Out[35]:
{'id': 2,
'pname': 'sabun',
'pdesc': 'kapde dolo',
'cat': 'house hold',
'subcat': 'tikiya',
'pr': 5,
'image': 'shop/images/download.jpeg'}
In [36]: sata.values()[0]
Out[36]:
{'id': 2,
'pname': 'sabun',
'pdesc': 'kapde dolo',
'cat': 'house hold',
'subcat': 'tikiya',
'pr': 5,
'image': 'shop/images/download.jpeg'}
In [37]: for k in sata.values()[0]:
...: print(sata.values()[0][k])
...:
2
sabun
kapde dolo
house hold
tikiya
5
shop/images/download.jpeg
In [38]: sata[0]
Out[38]:
{'id': 2,
'pname': 'sabun',
'pdesc': 'kapde dolo',
'cat': 'house hold',
'subcat': 'tikiya',
'pr': 5,
'image': 'shop/images/download.jpeg'}
In [39]: sata[0].values()
Out[39]: dict_values([2, 'sabun', 'kapde dolo', 'house hold', 'tikiya', 5, 'shop/images/download.jpeg'])
In [40]: sata[0]["id"]
Out[40]: 2
In [41]: sata[0]
Out[41]:
{'id': 2,
'pname': 'sabun',
'pdesc': 'kapde dolo',
'cat': 'house hold',
'subcat': 'tikiya',
'pr': 5,
'image': 'shop/images/download.jpeg'}
In [42]: sata[0][0]
---------------------------------------------------------------------------
KeyError Traceback (most recent call last)
<ipython-input-42-b88b6d891eb3> in <module>
----> 1 sata[0][0]
KeyError: 0
In [43]: sata[0]
Out[43]:
{'id': 2,
'pname': 'sabun',
'pdesc': 'kapde dolo',
'cat': 'house hold',
'subcat': 'tikiya',
'pr': 5,
'image': 'shop/images/download.jpeg'}
In [44]: for i in sata[0].values()
File "<ipython-input-44-7e0016377838>", line 1
for i in sata[0].values()
^
SyntaxError: invalid syntax
In [45]: for i in sata[0].values():
...: print(sata[0][i])
...:
---------------------------------------------------------------------------
KeyError Traceback (most recent call last)
<ipython-input-45-aaa81e0ae90e> in <module>
1 for i in sata[0].values():
----> 2 print(sata[0][i])
3
KeyError: 2
In [46]: sata[0]
Out[46]:
{'id': 2,
'pname': 'sabun',
'pdesc': 'kapde dolo',
'cat': 'house hold',
'subcat': 'tikiya',
'pr': 5,
'image': 'shop/images/download.jpeg'}
In [47]: sata[0].values()
Out[47]: dict_values([2, 'sabun', 'kapde dolo', 'house hold', 'tikiya', 5, 'shop/images/download.jpeg'])
In [48]: sata[0].values()[0]
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-48-149f2006a7ca> in <module>
----> 1 sata[0].values()[0]
TypeError: 'dict_values' object does not support indexing
In [49]: type(sata[0].values())
Out[49]: dict_values
In [50]: for i in rage(1,1):
...: print("c")
...:
---------------------------------------------------------------------------
NameError Traceback (most recent call last)
<ipython-input-50-4a819f89ceea> in <module>
----> 1 for i in rage(1,1):
2 print("c")
3
NameError: name 'rage' is not defined
In [51]: for i in range(1,1):
...: print("c")
...:
In [52]: for i in range(0,1):
...: print("c")
...:
c
In [53]: sata=product.objects.filter(Q(pname=a) | Q( pdesc=b)).values()
In [54]: sata
Out[54]: <QuerySet [{'id': 2, 'pname': 'sabun', 'pdesc': 'kapde dolo', 'cat': 'house hold', 'subcat': 'tikiya', 'pr': 5, 'image': 'shop/images/download.jpeg'}]>
In [55]: alldata=[]
In [56]: for i in sata[0].values()
File "<ipython-input-56-7e0016377838>", line 1
for i in sata[0].values()
^
SyntaxError: invalid syntax
In [57]: for i in sata[0].values():
...: alldata.append(i)
...:
In [58]: alldata
Out[58]:
[2,
'sabun',
'kapde dolo',
'house hold',
'tikiya',
5,
'shop/images/download.jpeg']
In [59]: alldata[0]
Out[59]: 2
In [60]: l=[1,2,3,4]
In [61]: l[0]
Out[61]: 1
In [62]: l[3]
Out[62]: 4
In [63]:
Comments
Post a Comment