Ho cercato di reindirizzare l'output standard di un comando di Django personalizzato utilizzando questo pezzo di codice:Redirect management.call_command() stdout in un file
from django.core.management.base import BaseCommand
from django.core import management
class Command(BaseCommand):
def handle(self, *args, **options):
f = open('/tmp/output', 'r+')
management.call_command('basequery', 'list', 'log', stdout=f)
f.close()
Tuttavia, quando chiamo questo da gestire. l'output standard appare sulla console e il file/tmp/output viene creato ma vuoto.
Ecco il Django documentation di quello che sto cercando di fare
Sto forse supponendo perché 'open ('/ tmp/output', 'r +')' apre il file solo per _reading_, ma devi essere in grado di scriverci – Anentropic
@Anentropic 'r +' significa leggere e Scrivi. Ho già provato con 'w' e ottengo lo stesso risultato – Phob1a
oops, hai ragione!:) – Anentropic