{"action":"created","issue":{"url":"https://api.github.com/repos/ajdavis/motor-blog/issues/36","labels_url":"https://api.github.com/repos/ajdavis/motor-blog/issues/36/labels{/name}","comments_url":"https://api.github.com/repos/ajdavis/motor-blog/issues/36/comments","events_url":"https://api.github.com/repos/ajdavis/motor-blog/issues/36/events","html_url":"https://github.com/ajdavis/motor-blog/issues/36","id":124528507,"number":36,"title":"Exception: unexpected token \"attrs\" in file base.jade on line 47","user":{"login":"versionzhang","id":8038676,"avatar_url":"https://avatars.githubusercontent.com/u/8038676?v=3","gravatar_id":"","url":"https://api.github.com/users/versionzhang","html_url":"https://github.com/versionzhang","followers_url":"https://api.github.com/users/versionzhang/followers","following_url":"https://api.github.com/users/versionzhang/following{/other_user}","gists_url":"https://api.github.com/users/versionzhang/gists{/gist_id}","starred_url":"https://api.github.com/users/versionzhang/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/versionzhang/subscriptions","organizations_url":"https://api.github.com/users/versionzhang/orgs","repos_url":"https://api.github.com/users/versionzhang/repos","events_url":"https://api.github.com/users/versionzhang/events{/privacy}","received_events_url":"https://api.github.com/users/versionzhang/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":5,"created_at":"2016-01-01T03:01:52Z","updated_at":"2016-01-06T16:57:20Z","closed_at":null,"body":"Hello, I run the blog demo in my mac. But I visit `localhost:8888/blog`, I got some error.\r\n\r\nThe message error:\r\n\r\n```\r\nTraceback (most recent call last):\r\n  File \"/usr/local/lib/python2.7/site-packages/tornado/web.py\", line 1445, in _execute\r\n    result = yield result\r\n  File \"/usr/local/lib/python2.7/site-packages/tornado/gen.py\", line 1008, in run\r\n    value = future.result()\r\n  File \"/usr/local/lib/python2.7/site-packages/tornado/concurrent.py\", line 232, in result\r\n    raise_exc_info(self._exc_info)\r\n  File \"/usr/local/lib/python2.7/site-packages/tornado/gen.py\", line 1014, in run\r\n    yielded = self.gen.throw(*exc_info)\r\n  File \"/Users/fredzhang/tornado_blog_study/motor-blog-master/motor_blog/web/handlers.py\", line 176, in get\r\n    page_num=int(page_num))\r\n  File \"/usr/local/lib/python2.7/site-packages/tornado/gen.py\", line 1008, in run\r\n    value = future.result()\r\n  File \"/usr/local/lib/python2.7/site-packages/tornado/concurrent.py\", line 232, in result\r\n    raise_exc_info(self._exc_info)\r\n  File \"/usr/local/lib/python2.7/site-packages/tornado/gen.py\", line 282, in wrapper\r\n    yielded = next(result)\r\n  File \"/Users/fredzhang/tornado_blog_study/motor-blog-master/motor_blog/web/handlers.py\", line 93, in render_async\r\n    template_name, **kwargs)\r\n  File \"/usr/local/lib/python2.7/site-packages/tornado/web.py\", line 803, in render_string\r\n    t = loader.load(template_name)\r\n  File \"/usr/local/lib/python2.7/site-packages/tornado/template.py\", line 424, in load\r\n    self.templates[name] = self._create_template(name)\r\n  File \"/usr/local/lib/python2.7/site-packages/tornado/template.py\", line 452, in _create_template\r\n    template = Template(f.read(), name=name, loader=self)\r\n  File \"/usr/local/lib/python2.7/site-packages/pyjade/ext/tornado/__init__.py\", line 84, in __init__\r\n    super(Template, self).__init__(template_string, name, *args,**kwargs)\r\n  File \"/usr/local/lib/python2.7/site-packages/tornado/template.py\", line 304, in __init__\r\n    self.code = self._generate_python(loader)\r\n  File \"/usr/local/lib/python2.7/site-packages/tornado/template.py\", line 352, in _generate_python\r\n    ancestors = self._get_ancestors(loader)\r\n  File \"/usr/local/lib/python2.7/site-packages/tornado/template.py\", line 370, in _get_ancestors\r\n    template = loader.load(chunk.name, self.name)\r\n  File \"/usr/local/lib/python2.7/site-packages/tornado/template.py\", line 424, in load\r\n    self.templates[name] = self._create_template(name)\r\n  File \"/usr/local/lib/python2.7/site-packages/tornado/template.py\", line 452, in _create_template\r\n    template = Template(f.read(), name=name, loader=self)\r\n  File \"/usr/local/lib/python2.7/site-packages/pyjade/ext/tornado/__init__.py\", line 82, in __init__\r\n    template_string = process(template_string,filename=name,compiler=Compiler)\r\n  File \"/usr/local/lib/python2.7/site-packages/pyjade/utils.py\", line 228, in process\r\n    block = _parser.parse()\r\n  File \"/usr/local/lib/python2.7/site-packages/pyjade/parser.py\", line 46, in parse\r\n    else: block.append(self.parseExpr())\r\n  File \"/usr/local/lib/python2.7/site-packages/pyjade/parser.py\", line 84, in parseExpr\r\n    return getattr(self,funcName)()\r\n  File \"/usr/local/lib/python2.7/site-packages/pyjade/parser.py\", line 332, in parseTag\r\n    block = self.block()\r\n  File \"/usr/local/lib/python2.7/site-packages/pyjade/parser.py\", line 251, in block\r\n    block.append(self.parseExpr())\r\n  File \"/usr/local/lib/python2.7/site-packages/pyjade/parser.py\", line 84, in parseExpr\r\n    return getattr(self,funcName)()\r\n  File \"/usr/local/lib/python2.7/site-packages/pyjade/parser.py\", line 332, in parseTag\r\n    block = self.block()\r\n  File \"/usr/local/lib/python2.7/site-packages/pyjade/parser.py\", line 251, in block\r\n    block.append(self.parseExpr())\r\n  File \"/usr/local/lib/python2.7/site-packages/pyjade/parser.py\", line 84, in parseExpr\r\n    return getattr(self,funcName)()\r\n  File \"/usr/local/lib/python2.7/site-packages/pyjade/parser.py\", line 332, in parseTag\r\n    block = self.block()\r\n  File \"/usr/local/lib/python2.7/site-packages/pyjade/parser.py\", line 251, in block\r\n    block.append(self.parseExpr())\r\n  File \"/usr/local/lib/python2.7/site-packages/pyjade/parser.py\", line 87, in parseExpr\r\n    (t, self.filename, self.line()))\r\nException: unexpected token \"attrs\" in file base.jade on line 47\r\n```"},"comment":{"url":"https://api.github.com/repos/ajdavis/motor-blog/issues/comments/169387372","html_url":"https://github.com/ajdavis/motor-blog/issues/36#issuecomment-169387372","issue_url":"https://api.github.com/repos/ajdavis/motor-blog/issues/36","id":169387372,"user":{"login":"ajdavis","id":84101,"avatar_url":"https://avatars.githubusercontent.com/u/84101?v=3","gravatar_id":"","url":"https://api.github.com/users/ajdavis","html_url":"https://github.com/ajdavis","followers_url":"https://api.github.com/users/ajdavis/followers","following_url":"https://api.github.com/users/ajdavis/following{/other_user}","gists_url":"https://api.github.com/users/ajdavis/gists{/gist_id}","starred_url":"https://api.github.com/users/ajdavis/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ajdavis/subscriptions","organizations_url":"https://api.github.com/users/ajdavis/orgs","repos_url":"https://api.github.com/users/ajdavis/repos","events_url":"https://api.github.com/users/ajdavis/events{/privacy}","received_events_url":"https://api.github.com/users/ajdavis/received_events","type":"User","site_admin":false},"created_at":"2016-01-06T16:57:20Z","updated_at":"2016-01-06T16:57:20Z","body":"Understood. Learning how to use git to contribute clean pull requests to a project you use is a very useful skill!\r\n\r\n1. Fixed, thanks.\r\n2. If you use the sample supervisord.conf [it passes \"--port\" to server.py here](https://github.com/ajdavis/motor-blog/blob/master/etc/supervisord.conf.example#L28), that overrides the port in motor_blog.conf, and allows you to run Motor-Blog processes on different ports\r\n3. Fixed in https://github.com/ajdavis/motor-blog/commit/adc1249698c21828498c96a4d2498fe59cc0e5f8"}}