python
from ripozo.resources import ResourceBase
from ripozo.viewsets import ViewSet
from ripozo.decorators import apimethod
class UserResource(ResourceBase):
resource_name = 'users'
id_field = 'id'
fields = ('id', 'name', 'email')
def list(self, request, *args, **kwargs):
users = self.get_all_users_from_database()
return self.response(users)
@apimethod
def create(self, request, *args, **kwargs):
user_data = request.get_json()
new_user_id = self.save_user_to_database(user_data)
return self.response({'status': 'success', 'id': new_user_id})
class UserViewSet(ViewSet):
resource = UserResource
def create_user(self, request):
return self.resource.create(request)
def list_users(self, request):
return self.resource.list(request)
app = RipozoApp()
app.registerViewSet(UserViewSet, base='/api')
if __name__ == '__main__':
app.run(debug=True)