Sto lavorando a un'applicazione che è in Django
. Sto cercando di memorizzare alcuni dati struttura e.g. dictionary
in MySQL
db. Quindi io uso il modulo Python Pickle
. Funziona bene quando lo memorizzo in db usando pickle.dumps(some_structure)
. Il mio campo DB è longblob
la modalità è binary
.UnpicklingError chiave di caricamento non valida, '{'
Ma quando ho accedere al campo di oggetto del modello in django:
obj = someModel.get(pk=1)
some_structure = obj.field
content = pickle.loads(some_structure)
si genera l'errore seguente:
UnpicklingError: invalid load key, '{'.
Please help me, ho provato google ma does'nt aiutami , c'è anche uno simile Question ma non è correlato al mio problema in quanto sto memorizzando in db.
Vorrei suggerire il decollo dei dati per archiviarli nel database non è il modo corretto per farlo. È necessario memorizzare correttamente i dati nel database, trasformando i dati in tabelle e campi. –
I dati sono in 'gerarchia complessa (dizionari nidificati)'. Non posso salvarlo in forma di tabelle e campi. I dati sono il risultato di qualche processo che in seguito ho bisogno di elaborare in django su un altro 'View'. –
Quindi JSON è probabilmente un formato migliore di pickle. JSON è multipiattaforma, mentre pickle è specifico per l'implementazione. –