diff options
Diffstat (limited to 'cli/app/controllers/page_controller.py')
| -rw-r--r-- | cli/app/controllers/page_controller.py | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/cli/app/controllers/page_controller.py b/cli/app/controllers/page_controller.py index 3da2068..587c61d 100644 --- a/cli/app/controllers/page_controller.py +++ b/cli/app/controllers/page_controller.py @@ -28,8 +28,9 @@ class PageView(CrudView): def on_destroy(self, session, item): session.query(Tile).filter(Tile.page_id == item.id).delete(synchronize_session=False) - @route('/sort/<int:page_id>', methods=['POST']) + @route('/<int:page_id>/sort/', methods=['POST']) def set_sort_order(self, page_id): + session = Session() page = session.query(Page).get(page_id) if not page: session.close() @@ -38,7 +39,11 @@ class PageView(CrudView): 'error': 'page not found' }) - print(request.json) + for i, tile_id in enumerate(request.json): + tile = session.query(Tile).get(tile_id) + tile.sort_order = i + session.add(tile) + session.commit() result = { 'status': 'ok', |
