python-dependency-injector/examples/wiring/example_container.py

29 lines
509 B
Python
Raw Normal View History

"""Wiring container injection example."""
import sys
from dependency_injector import containers, providers
from dependency_injector.wiring import inject, Provide
class Service:
...
class Container(containers.DeclarativeContainer):
service = providers.Factory(Service)
@inject
def main(container: Container = Provide[Container]):
service = container.service()
...
if __name__ == '__main__':
container = Container()
container.wire(modules=[sys.modules[__name__]])
main()