             // Validate
             let (backendUserForm, hasErrors) = BackendUserForm.validating(request.data)
             if hasErrors {
-                // TODO: append errors to response
-                return Response(redirect: "/admin/backend_users/edit/" + String(id)).flash(.error, "Validation error")
+                let response = Response(redirect: "/admin/backend_users/edit/" + String(id)).flash(.error, "Validation error")
+                let fieldset = try backendUserForm.makeNode(in: nil)
+                response.storage["_fieldset"] = fieldset
+                return response
             }
             
             // Store

            try Gate.allowOrFail(request, user.role)
        }
        
        return try drop.view.make("BackendUsers/edit", [
//            "fieldset": BackendUserForm.getFieldset(request),
//            "backendUser": try user.makeNode(),
//            "roles": Configuration.shared?.getRoleOptions(request.authedBackendUser().role).makeNode() ?? [:],
            "defaultRole": ""//(Configuration.shared?.defaultRole ?? "user").makeNode()
        ], for: request)
    }
    

            // Validate
            let (backendUserForm, hasErrors) = BackendUserForm.validating(request.data)
            if hasErrors {
                let response = Response(redirect: "/admin/backend_users/create").flash(.error, "Validation error")
                let fieldset = try backendUserForm.makeNode(in: nil)
                response.storage["_fieldset"] = fieldset
                return response
            }
            
            // Store
            let backendUser = try BackendUser(form: backendUserForm, request: request)
            try backendUser.save()
            
            // Send welcome mail
