moving API route to separate file
This commit is contained in:
@@ -25,6 +25,9 @@ def create_app(test_config=None):
|
|||||||
from . import weather
|
from . import weather
|
||||||
app.register_blueprint(weather.bp)
|
app.register_blueprint(weather.bp)
|
||||||
app.add_url_rule('/', endpoint='index')
|
app.add_url_rule('/', endpoint='index')
|
||||||
|
|
||||||
|
from . import api
|
||||||
|
app.register_blueprint(api.bp)
|
||||||
app.add_url_rule('/api', endpoint='api')
|
app.add_url_rule('/api', endpoint='api')
|
||||||
|
|
||||||
return app
|
return app
|
||||||
|
|||||||
22
weather/api.py
Normal file
22
weather/api.py
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
from flask import (
|
||||||
|
Blueprint
|
||||||
|
)
|
||||||
|
from werkzeug.exceptions import abort
|
||||||
|
|
||||||
|
from weather.db import get_db
|
||||||
|
|
||||||
|
bp = Blueprint('api', __name__)
|
||||||
|
|
||||||
|
@bp.route('/api')
|
||||||
|
def api():
|
||||||
|
db = get_db()
|
||||||
|
latest_period = dict(db.execute(
|
||||||
|
'SELECT `id` FROM `reports` WHERE `type` = "hourly" ORDER BY `reported_at` DESC'
|
||||||
|
).fetchone())
|
||||||
|
|
||||||
|
current_conditions = dict(db.execute(
|
||||||
|
f"SELECT * FROM `periods` WHERE `report_id` = {latest_period['id']} LIMIT 1"
|
||||||
|
).fetchone())
|
||||||
|
|
||||||
|
return current_conditions
|
||||||
|
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
from flask import (
|
from flask import (
|
||||||
Blueprint, flash, g, render_template, request, url_for
|
Blueprint, render_template
|
||||||
)
|
)
|
||||||
from werkzeug.exceptions import abort
|
from werkzeug.exceptions import abort
|
||||||
|
|
||||||
@@ -35,15 +35,3 @@ def index():
|
|||||||
periods=periods
|
periods=periods
|
||||||
)
|
)
|
||||||
|
|
||||||
@bp.route('/api')
|
|
||||||
def api():
|
|
||||||
db = get_db()
|
|
||||||
latest_period = dict(db.execute(
|
|
||||||
'SELECT `id` FROM `reports` WHERE `type` = "hourly" ORDER BY `reported_at` DESC'
|
|
||||||
).fetchone())
|
|
||||||
|
|
||||||
current_conditions = dict(db.execute(
|
|
||||||
f"SELECT * FROM `periods` WHERE `report_id` = {latest_period['id']} LIMIT 1"
|
|
||||||
).fetchone())
|
|
||||||
|
|
||||||
return current_conditions
|
|
||||||
|
|||||||
Reference in New Issue
Block a user