it's exactly what is expected! the elements are not removed from
Tornado, but from console they're removed! bizarre!
here is the code:
i've added the line:
print
str(self.db.users.find({"personnel.pseudo":"alucaard"}).distinct("produit_up"))
and here is what i got before deleting:
[{u'spec': {u'description': u'vend nokia 3310 du top', u'tags':
[u'nokia', u'portable', u'solide'], u'vendu': False, u'prix': 1000,
u'abus': 0, u'namep': u'nokia 3310', u'date': u'2012-09-25',
u'nombre': 1, u'id': u'alucaard134859865997'}, u'avatar': {u'photo':
ObjectId('5061fb833a5f3a09f4be0e22'), u'avctype': u'image/jpeg',
u'orientation': u'portrait'}}, {u'spec': {u'description': u'iphone
foooooooort', u'tags': [u'iphone', u'apple', u'3g'], u'vendu': False,
u'prix': 20000, u'abus': 0, u'namep': u'iphone 3gs', u'date':
u'2012-09-25', u'nombre': 1, u'id': u'alucaard134859872247'},
u'avatar': {u'photo': ObjectId('5061fbc23a5f3a09f4be0e24'),
u'avctype': u'image/jpeg', u'orientation': u'portrait'}}, {u'spec':
{u'description': u'bajoooooooot', u'tags': [u'206', u'hdi',
u'peugeot'], u'vendu': False, u'prix': 500000, u'abus': 0, u'namep':
u'peugeot 206', u'date': u'2012-09-25', u'nombre': 1, u'id':
u'alucaard134859875565'}, u'avatar': {u'photo':
ObjectId('5061fbe33a5f3a09f4be0e26'), u'avctype': u'image/jpeg',
u'orientation': u'paysage'}}]
[I 120926 21:49:55 web:1465] 200 GET /ventes (::1) 15.00ms
[I 120926 21:49:55 web:1465] 304 GET /static/css/profil.css?v=f0bf8 (::
1) 17.00ms
[I 120926 21:49:55 web:1465] 304 GET /134859872247-apple-iphone-3-
gs.jpg (::1) 7.00ms
[I 120926 21:49:55 web:1465] 304 GET /134859865997-nokia.jpg (::1)
6.00ms
[I 120926 21:49:56 web:1465] 304 GET /134859875565-peugeot.jpg (::1)
11.00ms
[I 120926 21:49:56 web:1465] 304 GET /static/js/jquery.js?v=e1efb (::
1) 0.00ms
[I 120926 21:49:56 web:1465] 304 GET /static/js/jquery.alerts.js?
v=ef703 (::1) 0.00ms
[I 120926 21:50:13 web:1465] 302 POST /supprimer (::1) 12.00ms
#this is when deleting
[{u'spec': {u'description': u'vend nokia 3310 du top', u'tags':
[u'nokia', u'portable', u'solide'], u'vendu': False, u'prix': 1000,
u'abus': 0, u'namep': u'nokia 3310', u'date': u'2012-09-25',
u'nombre': 1, u'id': u'alucaard134859865997'}, u'avatar': {u'photo':
ObjectId('5061fb833a5f3a09f4be0e22'), u'avctype': u'image/jpeg',
u'orientation': u'portrait'}}, {u'spec': {u'description':
u'bajoooooooot', u'tags': [u'206', u'hdi', u'peugeot'], u'vendu':
False, u'prix': 500000, u'abus': 0, u'namep': u'peugeot 206', u'date':
u'2012-09-25', u'nombre': 1, u'id': u'alucaard134859875565'},
u'avatar': {u'photo': ObjectId('5061fbe33a5f3a09f4be0e26'),
u'avctype': u'image/jpeg', u'orientation': u'paysage'}}]
[{u'spec': {u'description': u'vend nokia 3310 du top', u'tags':
[u'nokia', u'portable', u'solide'], u'vendu': False, u'prix': 1000,
u'abus': 0, u'namep': u'nokia 3310', u'date': u'2012-09-25',
u'nombre': 1, u'id': u'alucaard134859865997'}, u'avatar': {u'photo':
ObjectId('5061fb833a5f3a09f4be0e22'), u'avctype': u'image/jpeg',
u'orientation': u'portrait'}}, {u'spec': {u'description':
u'bajoooooooot', u'tags': [u'206', u'hdi', u'peugeot'], u'vendu':
False, u'prix': 500000, u'abus': 0, u'namep': u'peugeot 206', u'date':
u'2012-09-25', u'nombre': 1, u'id': u'alucaard134859875565'},
u'avatar': {u'photo': ObjectId('5061fbe33a5f3a09f4be0e26'),
u'avctype': u'image/jpeg', u'orientation': u'paysage'}}]
the product has not been removed!
and here is the code:
class VentesHandler(BaseHandler):
@tornado.web.authenticated
def get(self):
user = self.get_secure_cookie("mechtari")
info = tornado.escape.json_decode(user)
email = info["personnel"]["email"]
try:
produits = self.db.users.find({"personnel.email":email},
{"produit_up":1, "_id":0}).distinct("produit_up")
renderer = self.fs
print
str(self.db.users.find({"personnel.pseudo":"alucaard"}).distinct("produit_up"))
except (errors.AutoReconnect, errors.ConnectionFailure):
self.redirect("/error")
try:
self.render("ventes.html", produits=produits,
renderer=renderer)
except gridfs.errors.NoFile, e:
self.write(str(e))
class Supprimer(BaseHandler):
@tornado.web.authenticated
def post(self):
prod = self.get_arguments("supprime")
produ = prod[0][:]
idd = self.db.users.find_one({"
produit_up.spec.id":produ})
["produit_up"][0]["avatar"]["photo"]
try:
self.db.users.update({"
produit_up.spec.id":produ},
{"$pull":{"produit_up":{"
spec.id":produ}}})
self.fs.delete(ObjectId('{0}'.format(idd)))
print
str(self.db.users.find({"personnel.pseudo":"alucaard"}).distinct("produit_up"))