hello Ryan If I use var to declare variables, was in the transcript of this message I delete it by mistake, by eliminating several console.log for you they had the cleanest code. I´m sorry.
Thanks ! Regards Anto 2014/1/29 Ryan Schmidt <[email protected]> > > On Jan 28, 2014, at 19:39, Anto <[email protected]> wrote: > > > The code is as follows: > > > > - Nodejs + Expressjs > > > > app.get('/brand/:identifier', function(req, res){ > > > > identifier = req.params.identifier.toLowerCase(); > > Because you have not used "var" to declare it, "identifier" is a global > variable. This is a problem. Check your other code for this problem as well. > > > brands.find({ active: true, 'brandName' : { $regex : new > RegExp(identifier, "i")} }).populate({ > > > path: 'shop' > > > ,select: 'name shop description' > > > }).sort({dateAdded: 'desc'}).exec(function(err, > doc) { > > Here, you are firing off an asynchronous function (brands.find); when it > is done, the anonymous function (function(err, doc){...}) will be called > with the result. > > > if(doc && doc.length) { > > > > console.log('Data doc: ' + doc); > > > > return res.render('brand_list', { > > shop: doc[0].shop.shop > > ,name: doc[0].shop.name > > ,description: > doc[0].shop.description > > ,products: doc > > ,pageTitle: > doc[0].shop.shop > > ,pageUrl: ' > http://backofficeserver.local/brand/' + identifier > > }); > > > > } else { > > > > return res.render('listado_shop', { > > shop: doc[0].shop.shop > > ,name: doc[0].shop.name > > ,description: > doc[0].shop.description > > ,error: 'Not product´s > found' > > ,pageTitle: > doc[0].shop.shop > > ,pageUrl: ' > http://backofficeserver.local/brand/' + identifier > > }); > > > > } > > Here you are rendering the jade template, using various values, including > that global variable "identifier". But between the time that this request > started, and the time that the database returned the result and the > template was rendered, another request may have started and overwritten the > "identifier" variable with a different value. > > Use "var" to declare your local variables so that they stay local and > don't pollute other requests. > > > -- > -- > Job Board: http://jobs.nodejs.org/ > Posting guidelines: > https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines > You received this message because you are subscribed to the Google > Groups "nodejs" group. > To post to this group, send email to [email protected] > To unsubscribe from this group, send email to > [email protected] > For more options, visit this group at > http://groups.google.com/group/nodejs?hl=en?hl=en > > --- > You received this message because you are subscribed to a topic in the > Google Groups "nodejs" group. > To unsubscribe from this topic, visit > https://groups.google.com/d/topic/nodejs/2SxmvchhHaM/unsubscribe. > To unsubscribe from this group and all its topics, send an email to > [email protected]. > For more options, visit https://groups.google.com/groups/opt_out. > -- -- Job Board: http://jobs.nodejs.org/ Posting guidelines: https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines You received this message because you are subscribed to the Google Groups "nodejs" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/nodejs?hl=en?hl=en --- You received this message because you are subscribed to the Google Groups "nodejs" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/groups/opt_out.
