4👍
It looks like the mapping to self.stdout
is a very new change in Django’s trunk version, committed in May. If you’re running the 1.2 release or earlier, this won’t work – and you should be using the earlier documentation.
20👍
Since this is the first hit on Google I’ll write another solution to another problem with the same error message:
If your class Command implements __init__, it has to call __init__ of the superclass.
This will work:
from django.core.management.base import BaseCommand
class Command(BaseCommand):
def __init__(self, *args, **kwargs):
super(Command, self).__init__(*args, **kwargs)
... do stuff
This won’t work:
from django.core.management.base import BaseCommand
class Command(BaseCommand):
def __init__(self, *args, **kwargs):
... do stuff
- [Django]-Django 1.4 – Keeping track of multiple queries and pagination
- [Django]-Click in a dropdown option and show an specific field in Django
- [Django]-Django Rest Framework: PUT/POST fails in case of blank optional fields in nested serializer
5👍
There are two easy solutions here. The simple one is to simply convert all of your self.stdout
lines to print
statements instead.
That’s an OK solution and you can do it.
The better solution, since self.stdout
is set up in the execute()
method, is to…run the execute()
method.
So instead of:
Command().handle()
Do:
Command().execute()
That’ll set up the self.stdout
variable correctly and you’ll be off and running.
- [Django]-File Upload in Django modelForm
- [Django]-How can I rename an uploaded file on Django before sending it to amazon s3 bucket?
- [Django]-ModuleNotFoundError: No module named 'ebcli'