How to output JSON with swig in nodejs
node.js, swig-template
Solution
For versions of Swig prior to 1.0, the `json` filter was instead named `json_encode`:
{{ places|json_encode }}
And, for compatibility, 1.0 and later keep `json_encode` as an alias of `json`.
Though, you should also consider upgrading Swig:
$ npm install swig@0.14
npm WARN deprecated swig@0.14.0: v1.0.0 is a complete rewrite of Swig
from the ground up. Previous versions are no longer supported
Problem
I tried json filter, but I get "json" filter not found error. What I'm I doing wrong? ``` Error: Filter "json" not found at Object.exports.wrapFilter (......./node_modules/swig/lib/helpers.js:310:11) <script type="text/javascript"> {{ places|json }} </script> ``` object is passed from mongodb ``` this.displayMainPage = function(req, res, next) { "use strict"; places.getPlaces(10, function(err, results) { "use strict"; if (err) return next(err); return res.render('places_template', { places: results }); }); } ``` Edit: I'm trying to output json to pass to google maps and display the same data in html