from flask import make_response, abort from flask.views import View, request from pycs import db from pycs.database.Project import Project from pycs.frontend.notifications.NotificationManager import NotificationManager class EditProjectName(View): """ edit a projects name """ # pylint: disable=arguments-differ methods = ['POST'] def dispatch_request(self, identifier): # extract request data data = request.get_json(force=True) if data.get('name') is None: return abort(400) # start transaction with db.session.begin_nested(): # find project project = Project.query.get(identifier) if project is None: return abort(404) # set name project.set_name(data['name']) NotificationManager.edited("project", project.id, Project) return make_response()