{"id":23745,"library":"flask-classful","title":"Flask-Classful","description":"Flask-Classful provides class-based views for Flask, allowing you to define methods corresponding to HTTP methods (GET, POST, etc.) and automatically generate routes. Version 0.16.0 (latest) fixes compatibility with Flask >= 2.2. The library is now maintained under the Pallets Community Ecosystem. Release cadence is irregular.","status":"active","version":"0.16.0","language":"python","source_language":"en","source_url":"https://github.com/pallets-eco/flask-classful","tags":["flask","class-based views","web","pallets"],"install":[{"cmd":"pip install flask-classful","lang":"bash","label":"Install from PyPI"}],"dependencies":[{"reason":"Flask-Classful is an extension for Flask; requires Flask >= 2.2 for v0.16.0.","package":"flask","optional":false}],"imports":[{"note":"flask.ext.classy is an older/alternative packaging; the correct import is from flask_classful.","wrong":"from flask.ext.classy import FlaskView","symbol":"FlaskView","correct":"from flask_classful import FlaskView"},{"note":"The route decorator is exported from flask_classful.","wrong":"","symbol":"route","correct":"from flask_classful import route"}],"quickstart":{"code":"from flask import Flask\nfrom flask_classful import FlaskView\n\napp = Flask(__name__)\n\nclass MyView(FlaskView):\n    def index(self):\n        return \"Hello World!\"\n\nMyView.register(app)\n\nif __name__ == \"__main__\":\n    app.run()","lang":"python","description":"Minimal Flask app with a class-based view. Access http://localhost:5000/my-view/ to see 'Hello World!'."},"warnings":[{"fix":"Upgrade Flask to >= 2.2.","message":"Flask-Classful v0.16.0 requires Flask >= 2.2. Older versions of Flask may cause errors.","severity":"breaking","affected_versions":"v0.16.0"},{"fix":"Upgrade to v0.14.2 or higher to avoid deprecation warnings.","message":"The `inspect.getargspec` usage is deprecated; removed in Python 3.11+. Make sure you are using Flask-Classful v0.14.2 or later.","severity":"deprecated","affected_versions":"<0.14.2"},{"fix":"Rename methods that conflict with FlaskView internals.","message":"Route methods are automatically derived from HTTP method names (e.g., `get`, `post`). Do not define a method named `route` or `register` as they conflict with the class internals.","severity":"gotcha","affected_versions":"all"}],"env_vars":null,"last_verified":"2026-05-01T00:00:00.000Z","next_check":"2026-07-30T00:00:00.000Z","problems":[{"fix":"Use `from flask_classful import FlaskView`.","cause":"Incorrect import path; possibly installed a different package or misnamed.","error":"AttributeError: module 'flask_classful' has no attribute 'FlaskView'"},{"fix":"Use `from flask_classful import FlaskView`.","cause":"Trying to import from the old `flask.ext.classy` pattern, which is no longer supported.","error":"ImportError: cannot import name 'FlaskView' from 'flask.ext.classy'"}],"ecosystem":"pypi","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}