Extension
class¶
This is the reference for the main object Extension
. It is optionally wrapped by
a Pluggable.
esmerald.Extension
¶
Extension(app=None, **kwargs)
Bases: ABC
, ExtensionProtocol
Extension
object is the one being used to add the logic that will originate
the pluggable
in the application.
The Extension
must implement the extend
function.
Read more about the Extension and learn how to use it.
Example
from typing import Optional
from esmerald import Esmerald, Extension
from esmerald.types import DictAny
class MyExtension(Extension):
def __init__(self, app: Optional["Esmerald"] = None, **kwargs: "DictAny"):
super().__init__(app)
self.kwargs = kwargs
def extend(self, **kwargs: "DictAny") -> None:
'''
Function that should always be implemented when extending
the Extension class or a `NotImplementedError` is raised.
'''
# Do something here
PARAMETER | DESCRIPTION |
---|---|
app
|
An
TYPE:
|
**kwargs
|
Any additional kwargs needed.
TYPE:
|
Source code in esmerald/pluggables/base.py
116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 |
|
extend
abstractmethod
¶
extend(**kwargs)
PARAMETER | DESCRIPTION |
---|---|
**kwargs
|
TYPE:
|
Source code in esmerald/pluggables/base.py
134 135 136 |
|