Masonite comes with a simple way to store sessions. Masonite supports the following session drivers: Cookie and Redis.
Session configuration is located at config/session.py file. In this file, you can configure which driver to use.
Masonite is configured to use the Cookie session driver by default, named cookie.
DRIVERS = {
"default": "cookie",
"cookie": {},
"redis": {
"host": "127.0.0.1",
"port": 6379,
"password": "",
"options": {"db": 1}, # redis module driver specific options
"timeout": 60 * 60,
"namespace": "masonite4",
},
}
Cookie driver will store all session data in the users cookies. It can be used as is.
Redis driver is requiring the redis python package, that you can install with:
Then you should define Redis as default driver and configure it with your Redis server parameters:
Finally ensure that the Redis server is running and you're ready to start using sessions.
Saving Session Data
To save session data you can simply "set" data into the session:
Flash data is data specific to the next request. This is useful for data such as error messages or alerts:
Retrieving Session Data
To get back the session data you set you can simply using the "get" method:
Checking For Existence
You can check if a session has a specific key:
Deleting Session Data
You can also delete a key from the session
Resetting the Session
You can reset all data in a session: