2016-06-10 25 views
5

Mi è stato fornito un backup del database (con archivio file), la cartella filestore e un'altra cartella con i moduli installati su quel database.Come risolvere l'oggetto 'HttpRequest' non ha attributo 'endpoint_arguments' in Odoo?

Sono previsto il ripristino di tale backup in Odoo 8 senza ulteriori dati. Quindi quello che ho fatto è creare il ruolo PostgreSQL che possiede le tabelle del database e dargli abbastanza permessi (login, createdb, replica). Quindi ho creato un file di configurazione Odoo. All'interno di questo, ho impostato questo nuovo ruolo PostgreSQL in db_user e la sua password in db_password. Ho aggiunto il percorso in cui ho archiviato il filestore in data_dir e il percorso della cartella con tutti i moduli in addons_path.

Come mi è stato dato alcun file di avvio, ho copiato la cartella OCB di altra istanza vudù che ho e usato il suo file odoo.py per iniziare vudù.

La nuova istanza sembra funzionare bene, ma ora ho appena ripristinato il database, e ottengo questo errore:

QWebException: "'HttpRequest' object has no attribute 'endpoint_arguments'" while evaluating 
'website.get_alternate_languages(request.httprequest)' 

ero googling molto, ma io non sono riuscito a trovare nulla al riguardo, ad eccezione di una domanda senza risposta in altri forum.

Qualcuno sa di cosa si tratta?

+0

Puoi dirmi il tuo obiettivo attuale? Cosa vuoi fare con quello? –

+0

Sembra che tu non stia usando Odoo ufficiale (come menzioni la cartella OCB, dovrebbe essere uno dell'OCA?) O passare all'ultima versione ufficiale di Odoo 8.0 come suggerito o se per qualsiasi motivo non puoi passare alla versione ufficiale, puoi prelevare manualmente le due modifiche a cui ho fatto riferimento nella mia risposta e applicarle alla tua istanza Odoo. Ad ogni modo un aggiornamento della tua istanza potrebbe essere una soluzione anche per la tua versione OCA, se OCA ha la stessa correzione applicata alla loro versione, se non la modifica manuale sarà necessaria. –

+0

[a volte la versione OCA viene aggiornata con un ritardo] (https://www.odoo.com/fr_FR/forum/aide-1/question/why-is-the-ocb-v8-github-repository-less-recent- then-the-official-odoo-v8-60949) + il tempo trascorso dall'ultimo aggiornamento del server. Così... –

risposta

1

Modifiche correlate a questo problema sono state introdotte nel vudù il 29 febbraio 2016 (intendo le seguenti modifiche: [FIX] website: alternate languages translated URL e [FIX] website: backport of come si può verificare per ora questi cambiamenti sono disponibili nel vudù 8,0 sede ufficiale codice pure) .
Quindi molto probabilmente avete usato server Odoo 8.0 obsoleto che non contengono le correzioni sopra menzionate. Si prega di aggiornare all'ultima versione ufficiale di Odoo 8.0 e verificare se il problema persiste. Normalmente il tuo problema dovrebbe scomparire dopo l'aggiornamento.

0

Quando si spostano i database di backup e si desidera ripristinarli in un secondo momento, assicurarsi di contrassegnare il ramo e il punto di commit dei file del server da cui è stato effettuato il backup. Ho dato un'occhiata al mio vodo odoo locale e posso vedere che la variabile endpoint_arguments è inizializzata sulla creazione di una richiesta web (openerp/http.py class WebRequest attorno alla riga 192.)

Hai detto che sei ripristinare il database sull'Odoo OCB v8. Se si naviga loro distribuzione e il commit:

https://github.com/OCA/OCB/commit/3913667396e17075528108ac1031939e6f479ced#diff-5e2f434047c379642786a87195c806f9

si vedrà che questa variabile mancava e hanno aggiunto. Quindi assicurati di avere il file del server git pull per ottenere quel commit.

La radice del problema è che è stato eseguito un backup da un server con codice diverso rispetto a quello a cui si sta tentando di ripristinare il database. (Il file qweb cercava una variabile che non è presente)