Update app directory structure, add home and routes

This commit is contained in:
Brian Duggan 2018-05-25 11:21:49 -04:00
parent d29dae1253
commit 5007a246fb
9 changed files with 53 additions and 38 deletions

43
app.py
View File

@ -1,42 +1,11 @@
#!/usr/bin/env python
from atst.app import make_app
import tornado.ioloop
import tornado.web
import os
from webassets import Environment, Bundle
# Set up assets.
static_path = os.path.join(os.path.dirname(__file__), "static")
scss_path = os.path.join(os.path.dirname(__file__), "scss")
assets = Environment(directory=scss_path, url='/static')
css = Bundle('atat.scss', filters='scss', output='../static/assets/out.css')
assets.register('css', css)
helpers = {
'assets': assets
}
class MainHandler(tornado.web.RequestHandler):
def get_template_namespace(self):
ns = super(MainHandler, self).get_template_namespace()
ns.update(helpers)
return ns
def get(self):
self.render("hello.html.to")
def make_app():
app = tornado.web.Application([
(r"/", MainHandler),
],
debug=os.getenv('DEBUG',False),
template_path=os.path.join(os.path.dirname(__file__), "templates"),
static_path=static_path
)
return app
if __name__ == "__main__":
app = make_app()
app.listen(8888)
print("Listening on http://localhost:8888")
tornado.ioloop.IOLoop.current().start()
app = make_app(debug=os.getenv('DEBUG',False))
port = 8888
app.listen(port)
print("Listening on http://localhost:%i" % port)
tornado.ioloop.IOLoop.current().start()

0
atst/__init__.py Normal file
View File

13
atst/app.py Normal file
View File

@ -0,0 +1,13 @@
import tornado.web
from atst.handlers.main import MainHandler
from atst.home import home
def make_app(**kwargs):
app = tornado.web.Application([
(r"/", MainHandler),
],
template_path = home.child('templates'),
static_path = home.child('static'),
**kwargs
)
return app

24
atst/handler.py Normal file
View File

@ -0,0 +1,24 @@
import os
from webassets import Environment, Bundle
import tornado.web
from atst.home import home
class BaseHandler(tornado.web.RequestHandler):
def get_template_namespace(self):
assets = Environment(
directory = home.child('scss'),
url = '/static')
css = Bundle(
'atat.scss',
filters = 'scss',
output = '../static/assets/out.css')
assets.register( 'css', css )
helpers = {
'assets': assets
}
ns = super(BaseHandler, self).get_template_namespace()
ns.update(helpers)
return ns

View File

5
atst/handlers/main.py Normal file
View File

@ -0,0 +1,5 @@
from atst.handler import BaseHandler
class MainHandler(BaseHandler):
def get(self):
self.render("hello.html.to")

3
atst/home.py Normal file
View File

@ -0,0 +1,3 @@
from unipath import Path
home = Path( __file__ ).parent.parent

View File

@ -2,3 +2,4 @@ tornado==5.0.2
webassets==0.12.1
pytest==3.6.0
pytest-tornado==0.5.0
Unipath==1.1

View File

@ -1,6 +1,6 @@
import pytest
import tornado.web
from app import make_app
from atst.app import make_app
@pytest.fixture
def app():