Browse Source

Fixed #33163 -- Added example of connection signal handlers in AppConfig.ready() to docs.

Roxane 3 years ago
parent
commit
2d124f6a1c
2 changed files with 16 additions and 3 deletions
  1. 1 0
      AUTHORS
  2. 15 3
      docs/topics/signals.txt

+ 1 - 0
AUTHORS

@@ -819,6 +819,7 @@ answer newbie questions, and generally made Django that much better:
     Romain Garrigues <romain.garrigues.cs@gmail.com>
     Ronny Haryanto <https://ronny.haryan.to/>
     Ross Poulton <ross@rossp.org>
+    Roxane Bellot <https://github.com/roxanebellot/>
     Rozza <ross.lawley@gmail.com>
     Rudolph Froger <rfroger@estrate.nl>
     Rudy Mutter

+ 15 - 3
docs/topics/signals.txt

@@ -136,9 +136,21 @@ Now, our ``my_callback`` function will be called each time a request finishes.
     In practice, signal handlers are usually defined in a ``signals``
     submodule of the application they relate to. Signal receivers are
     connected in the :meth:`~django.apps.AppConfig.ready` method of your
-    application configuration class. If you're using the :func:`receiver`
-    decorator, import the ``signals`` submodule inside
-    :meth:`~django.apps.AppConfig.ready`.
+    application :ref:`configuration class <configuring-applications-ref>`. If
+    you're using the :func:`receiver` decorator, import the ``signals``
+    submodule inside :meth:`~django.apps.AppConfig.ready`, this will implicitly
+    connect signal handlers::
+
+        from django.apps import AppConfig
+
+        class MyAppConfig(AppConfig):
+            ...
+
+            def ready(self):
+                # Implicitly connect a signal handlers decorated with @receiver.
+                from . import signals
+                # Explicitly connect a signal handler.
+                signals.request_finished.connect(signals.my_callback)
 
 .. note::