def delete(self, id): bus = Bus.get_by_id(int(id), parent=self.get_current_account()) if not bus: self.session.add_flash(messages.BUS_NOT_FOUND, level='error') return self.redirect_to('bus.list') bus.delete() self.session.add_flash(messages.BUS_DELETE_SUCCESS) return self.redirect_to('bus.list')
def update(self, id): bus = Bus.get_by_id(int(id), parent=self.get_current_account()) if not bus: return self.redirect_to('bus.list', messages.BUS_NOT_FOUND) form = BusForm(self.request.POST, obj=bus) if self.request.method == 'POST' and form.validate(): form.populate_obj(bus) bus.put() self.session.add_flash(messages.BUS_UPDATE_SUCCESS) return self.redirect_to('bus.list') return self.render_to_response('bus/form.haml', {'form': form})
def assign_driver(self, id): bus = Bus.get_by_id(int(id), parent=self.get_current_account()) if not bus: return self.redirect_to('bus.list', messages.BUS_NOT_FOUND) form = AssignDriverForm(self.request.POST, obj=bus) if self.request.method == 'POST' and form.validate(): busDriver = BusDriver.get_by_driver_id(form.data['driver_id']) bus.bus_driver = busDriver.key() bus.put() self.session.add_flash(messages.BUS_DRIVER_ASSIGN_SUCCESS) return self.redirect_to('bus.list') # Unable to flash ASS_DRIVER_ERROR because request returns 302. # Form may not be validating correctly in the above, hence the # the form call below is the one that actually renders the # correct form. return self.render_to_response('bus/form.haml', {'form': form})