I found many examples for older versions of CherryPy but they each referenced importing modules not found in cherrypy 3.2.2. Looking in the documentation, I found a reference to the fact that there is built in functionality with storage_type (one of ‘ram’, ‘file’, ‘postgresql’).
I found many examples for older versions of CherryPy but they each referenced importing
Share
For a start you could take a look at
https://github.com/3kwa/cherrys
how this guy writes his own session class and overwrites some methods. He does it for redis not MySQL. You would write methods for MySQL. A very similar class already exists in cherrypy in “cherrpy/lib/sessions.py”:
which is very similar to what you want. I’d say, take the implementing approach from the “3kwa” but instead of his RedisSession-class copy the PostgresqlSession-class from “cherrpy/lib/sessions.py” and alter to match proper MySQL-Syntax.
A possible path could be:
Download the “cherrys.py” from above link and rename into “mysqlsession.py”. Overwrite the “RedisSessions(Session)” with the “PostgresqlSession(Session)” from “cherrpy/lib/sessions.py” and rename to “MySQLSession(Session)”. Be sure to add
to your new “MySQLSession”-class (like it is done in RedisSession(Session). Alter the the PostgreSQL-Syntax to match MySQL-Syntax (that shouldn’t be difficult). Put the “mysqlsession.py” somewhere below your project directory and import in the application with
and use
in the initialization of you app. In the config
and the parameters (like host, port, etc.) like you would with class “PostgreSQL”.
I can be wrong all along. But this is how I would try to solve this.