Update README.rst

This commit is contained in:
Roman Mogylatov 2020-07-06 17:35:31 -04:00 committed by GitHub
parent 4d41c8f384
commit cb833ed788
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -36,19 +36,18 @@ Example:
.. code-block:: python .. code-block:: python
import logging
import sqlite3 import sqlite3
import boto3 import boto3
from dependency_injector import containers, providers from dependency_injector import containers, providers
from example import services, main
from .example import services, main
class Application(containers.DeclarativeContainer): class Application(containers.DeclarativeContainer):
"""Application container.""" """Application container."""
config = providers.Configuration('config') config = providers.Configuration()
# Gateways # Gateways
@ -84,34 +83,27 @@ Run the application:
.. code-block:: python .. code-block:: python
"""Run example of dependency injection in Python."""
import sys import sys
import logging
from container import Application from .application import Application
def main(uid, password, photo):
"""Run application."""
application = Application()
application.config.from_yaml('config.yml')
users_service = application.users_service()
auth_service = application.auth_service()
photos_service = application.photos_service()
user = users_service.get_user_by_id(uid)
auth_service.authenticate(user, password)
photos_service.upload_photo(user['uid'], photo)
if __name__ == '__main__': if __name__ == '__main__':
# Configure container: main(*sys.argv[1:])
container = Application(
config={
'database': {
'dsn': ':memory:',
},
'aws': {
'access_key_id': 'KEY',
'secret_access_key': 'SECRET',
},
'auth': {
'token_ttl': 3600,
},
}
)
container.logger().addHandler(logging.StreamHandler(sys.stdout))
# Run application:
container.main(*sys.argv[1:])
You can find more *Dependency Injector* examples in the ``/examples`` directory You can find more *Dependency Injector* examples in the ``/examples`` directory
on our GitHub: on our GitHub: