diff options
| author | Claude Paroz <claude@2xlibre.net> | 2013-02-09 10:17:26 +0100 |
|---|---|---|
| committer | Claude Paroz <claude@2xlibre.net> | 2013-02-09 10:17:26 +0100 |
| commit | 0201b9d6d89ea277383e1fc0007bfaa33351b60b (patch) | |
| tree | ebd94379d05f86b41f9ff687c49ee24eca9556f0 /docs | |
| parent | f44922c79516b9caf0e09fb060f20c896668b90f (diff) | |
Fixed #19749 -- Documented ending param to command's self.stdout/err
Thanks xian at mintchaos.com for the report.
Diffstat (limited to 'docs')
| -rw-r--r-- | docs/howto/custom-management-commands.txt | 8 | ||||
| -rw-r--r-- | docs/releases/1.5.txt | 5 |
2 files changed, 12 insertions, 1 deletions
diff --git a/docs/howto/custom-management-commands.txt b/docs/howto/custom-management-commands.txt index bfcea64b49..7a31fc44e3 100644 --- a/docs/howto/custom-management-commands.txt +++ b/docs/howto/custom-management-commands.txt @@ -65,12 +65,18 @@ look like this: self.stdout.write('Successfully closed poll "%s"' % poll_id) +.. _management-commands-output: + .. note:: When you are using management commands and wish to provide console output, you should write to ``self.stdout`` and ``self.stderr``, instead of printing to ``stdout`` and ``stderr`` directly. By using these proxies, it becomes much easier to test your custom - command. + command. Note also that you don't need to end messages with a newline + character, it will be added automatically, unless you specify the ``ending`` + parameter:: + + self.stdout.write("Unterminated line", ending='') The new custom command can be called using ``python manage.py closepoll <poll_id>``. diff --git a/docs/releases/1.5.txt b/docs/releases/1.5.txt index 33dcb0e794..acf4f153ce 100644 --- a/docs/releases/1.5.txt +++ b/docs/releases/1.5.txt @@ -253,6 +253,11 @@ Django 1.5 also includes several smaller improvements worth noting: from :ref:`call_command <call-command>`. Any exception raised by the command (mostly :ref:`CommandError <ref-command-exceptions>`) is propagated. + Moreover, when you output errors or messages in your custom commands, you + should now use ``self.stdout.write('message')`` and + ``self.stderr.write('error')`` (see the note on + :ref:`management commands output <management-commands-output>`). + * The dumpdata management command outputs one row at a time, preventing out-of-memory errors when dumping large datasets. |
