Odoo PyCharm install debug: differenze tra le versioni

Da PNLUG.
(Creata pagina con "== Configurazione e debug di Odoo con PyCharm-community == Di seguito, trovate un breve tutorial da seguire per creare e configurare un progetto Odoo con PyCharm: Poniamo c...")
 
(Configurazione e debug di Odoo con PyCharm-community)
Riga 1: Riga 1:
== Configurazione e debug di Odoo con PyCharm-community ==
+
<big> Configurazione e debug di Odoo con PyCharm-community </big>
  
Di seguito, trovate un breve tutorial da seguire per creare e configurare un progetto Odoo con PyCharm:
+
Dopo aver installato PyCharm sul vostro PC, ora potete seguire questo breve tutorial per creare e configurare un progetto Odoo con PyCharm:
  
Poniamo che la nostra installazione si trovi su:
+
Poniamo che la nostra installazione di Odoo si trovi nella cartella:
  
 
  '''/home/myuser/odoo-dev/OCB'''
 
  '''/home/myuser/odoo-dev/OCB'''
  
Per creare un nuovo progetto ODOO, avviamo il programma PyCharm, chiudiamo eventuali progetti  
+
Per creare un nuovo progetto ODOO, avviamo il programma PyCharm, chiudiamo eventuali progetti esistenti e selezioniamo '''File -> Create new project'''.  
esistenti e selezioniamo '''File -> Create new project'''.  
+
  
Selezioniamo ''Create new project'' e come location scegliamo la cartella che
+
Selezioniamo ''Create new project'' e come cartella di salvataggio dei lavori scegliamo la cartella che contiene lo script di avvio di ODOO; nel nostro caso:
che contiene lo script di avvio di ODOO, nel nostro caso  
+
/home/myuser/odoo-dev/OCB  
/home/myuser/odoo-dev/OCB, scegliamo l'interprete Python 2.7 e facciamo click
+
poi scegliamo l'interprete Python 2.7 e alla fine facciamo click su ''Create''.
su Create.
+
  
PyCharm ci avverte che la directory selezionata non è vuota e ci chiede se vogliamo attivare il progetto da sorgenti esistenti. Facciamo click su Yes.
+
PyCharm ci avverte che la directory selezionata non è vuota e ci chiede se vogliamo attivare il progetto dai sorgenti esistenti. Facciamo click su ''Yes''.
  
A questo punto si apre PyCharm con il nostro progetto e vengono creati i files di configurazione del progetto che si trovano in una cartella di  
+
Arrivati a questo punto si avvia PyCharm con il nostro progetto e vengono creati i relativi files di configurazione che verranno salvati in una cartella di  
nome .idea posizionata nella root del progetto, nel nostro caso:
+
nome ''.idea'' posizionata nella root del progetto; nel nostro caso la troveremo in:
 
  /home/myuser/odoo-dev/OCB/.idea
 
  /home/myuser/odoo-dev/OCB/.idea
  
Non è finita, ora dobbiamo ancora insegnare a PyCharm a trovare le cartelle  
+
Il lavoro ancora non è terminato, in quanto è necessario insegnare a PyCharm la posizione delle cartelle degli 'addons'' di Odoo e ad avviare il programma.
degli 'addons'' di Odoo e ad avviare il programma.
+
  
Andiamo su: '''File -> Settings''' e scegliamo la voce '''"Project: Project Structure"''', e facciamo click su '''"Add Content Root"''', per aggiungere altre cartelle che fanno parte del progetto, nel nostro caso aggiungiamo cartelle di addons che si trovano fuori dalla cartella principale; ad esempio:
+
Andiamo su: '''File -> Settings''' e scegliamo la voce '''"Project: Project Structure"''', e facciamo click su '''"Add Content Root"''' per aggiungere le altre cartelle che fanno parte del progetto; nel nostro caso aggiungiamo cartelle degli ''addons'' che si trovano fuori dalla cartella principale; ad esempio:
  
 
  /home/myuser/odoo-dev/addons<br />
 
  /home/myuser/odoo-dev/addons<br />
 
  /home/myuser/odoo-dev/addons_ita<br />
 
  /home/myuser/odoo-dev/addons_ita<br />
  
Se vogliamo possiamo aggiungere anche cartelle che non contengono sorgenti python, ma ad esempio files di configurazione, appunti ecc..., ad esempio:
+
Se lo desideriamo, possiamo aggiungere anche cartelle che non contengono dei sorgenti in python, come ad esempio files di configurazione, appunti ecc...; nel nostro esempio:
  
 
  /home/myuser/odoo-dev/extra_data
 
  /home/myuser/odoo-dev/extra_data
  
Ora PyCharm sa dove trovare i sorgenti di odoo ed anche i sorgenti dei moduli che andremo a sviluppare, non ci resta che insegnargli come lanciare Odoo.
+
Ora PyCharm sa dove trovare i file sorgenti di Odoo ed anche i file sorgenti dei moduli che andremo poi a sviluppare; non ci resta che insegnargli come lanciare Odoo.
  
 
Andiamo su '''Run -> Debug...''' e scegliamo '''"Edit configuration"''' ed andiamo sul tab '''Defaults -> Python'''
 
Andiamo su '''Run -> Debug...''' e scegliamo '''"Edit configuration"''' ed andiamo sul tab '''Defaults -> Python'''
Riga 41: Riga 38:
 
  '''/home/myuser/odoo-dev/OCB/odoo-bin'''
 
  '''/home/myuser/odoo-dev/OCB/odoo-bin'''
  
e come script parameters indichiamo il file di configurazione che usiamo per far partite Odoo da riga di comando.<br> (la gestione dei files di configurazione
+
e come ''script parameters'' indichiamo il file di configurazione che usiamo per far partite Odoo da riga di comando.<br> (la gestione dei files di configurazione
di Odoo non fa parte di questo tutorial; diamo per scontato che ci sia già un file di configurazione).<br> Nel nostro caso il file è:
+
di Odoo non fa parte di questo tutorial; diamo per scontato che ci sia già un file di configurazione).<br>  
 +
Nel nostro caso il file utilizzato è:
  
 
  '''--config=/home/myuser/odoo-dev/extra_data/odoo.conf'''
 
  '''--config=/home/myuser/odoo-dev/extra_data/odoo.conf'''
  
Ora navighiamo nell albero dei files del progetto ed apriamo:
+
Ora navighiamo nell'albero dei files del progetto ed apriamo:
  
 
  '''/home/myuser/odoo-dev/OCB/odoo-bin'''
 
  '''/home/myuser/odoo-dev/OCB/odoo-bin'''
Riga 52: Riga 50:
 
Andiamo nel menu Run ed apriamo '''Debug odoo-bin'''
 
Andiamo nel menu Run ed apriamo '''Debug odoo-bin'''
  
Se le configurazioni effettuate qui sopra sono corrette, tutto andrà bene; ora il nostro progetto è partito e lo verifichiamo andando a visualizzare con un browser, l'URL:  
+
Se le configurazioni effettuate qui sopra sono andate a buon fine, la configurazione del progetto è completa; ora il nostro progetto è partito e lo verifichiamo andando a visualizzare con un browser, l'URL:  
  
 
  '''http://localhost:8069/'''
 
  '''http://localhost:8069/'''
  
Ora possiamo fermare lo script facendo click sul pulsante di arresto (quadratino rosso) sulla finestra di console di Run nella parte bassa.
+
Ora possiamo fermare lo script facendo click sul pulsante di arresto (quadratino rosso) sulla finestra di console di Run, posizionato nella parte bassa della schermata.
  
 
Per ultima cosa vediamo se funziona il debugger. Supponiamo di aver installato il modulo "CRM Custom Fields" nella cartella:
 
Per ultima cosa vediamo se funziona il debugger. Supponiamo di aver installato il modulo "CRM Custom Fields" nella cartella:
Riga 71: Riga 69:
 
in quel momento.
 
in quel momento.
  
Ora siamo pronti a sviluppare i nostri moduli usufruendo del potente ambiente di lavoro messoci a disposizione da PyCharm.
+
Ora siamo pronti a sviluppare i nostri moduli, usufruendo del potente ambiente di lavoro messoci a disposizione da PyCharm.
  
 
'''Un ultima nota''':
 
'''Un ultima nota''':

Versione delle 19:22, 17 mar 2017

Configurazione e debug di Odoo con PyCharm-community

Dopo aver installato PyCharm sul vostro PC, ora potete seguire questo breve tutorial per creare e configurare un progetto Odoo con PyCharm:

Poniamo che la nostra installazione di Odoo si trovi nella cartella:

/home/myuser/odoo-dev/OCB

Per creare un nuovo progetto ODOO, avviamo il programma PyCharm, chiudiamo eventuali progetti esistenti e selezioniamo File -> Create new project.

Selezioniamo Create new project e come cartella di salvataggio dei lavori scegliamo la cartella che contiene lo script di avvio di ODOO; nel nostro caso:

/home/myuser/odoo-dev/OCB 

poi scegliamo l'interprete Python 2.7 e alla fine facciamo click su Create.

PyCharm ci avverte che la directory selezionata non è vuota e ci chiede se vogliamo attivare il progetto dai sorgenti esistenti. Facciamo click su Yes.

Arrivati a questo punto si avvia PyCharm con il nostro progetto e vengono creati i relativi files di configurazione che verranno salvati in una cartella di nome .idea posizionata nella root del progetto; nel nostro caso la troveremo in:

/home/myuser/odoo-dev/OCB/.idea

Il lavoro ancora non è terminato, in quanto è necessario insegnare a PyCharm la posizione delle cartelle degli 'addons di Odoo e ad avviare il programma.

Andiamo su: File -> Settings e scegliamo la voce "Project: Project Structure", e facciamo click su "Add Content Root" per aggiungere le altre cartelle che fanno parte del progetto; nel nostro caso aggiungiamo cartelle degli addons che si trovano fuori dalla cartella principale; ad esempio:

/home/myuser/odoo-dev/addons
/home/myuser/odoo-dev/addons_ita

Se lo desideriamo, possiamo aggiungere anche cartelle che non contengono dei sorgenti in python, come ad esempio files di configurazione, appunti ecc...; nel nostro esempio:

/home/myuser/odoo-dev/extra_data

Ora PyCharm sa dove trovare i file sorgenti di Odoo ed anche i file sorgenti dei moduli che andremo poi a sviluppare; non ci resta che insegnargli come lanciare Odoo.

Andiamo su Run -> Debug... e scegliamo "Edit configuration" ed andiamo sul tab Defaults -> Python

Come script scegliamo:

/home/myuser/odoo-dev/OCB/odoo-bin

e come script parameters indichiamo il file di configurazione che usiamo per far partite Odoo da riga di comando.
(la gestione dei files di configurazione di Odoo non fa parte di questo tutorial; diamo per scontato che ci sia già un file di configurazione).
Nel nostro caso il file utilizzato è:

--config=/home/myuser/odoo-dev/extra_data/odoo.conf

Ora navighiamo nell'albero dei files del progetto ed apriamo:

/home/myuser/odoo-dev/OCB/odoo-bin

Andiamo nel menu Run ed apriamo Debug odoo-bin

Se le configurazioni effettuate qui sopra sono andate a buon fine, la configurazione del progetto è completa; ora il nostro progetto è partito e lo verifichiamo andando a visualizzare con un browser, l'URL:

http://localhost:8069/

Ora possiamo fermare lo script facendo click sul pulsante di arresto (quadratino rosso) sulla finestra di console di Run, posizionato nella parte bassa della schermata.

Per ultima cosa vediamo se funziona il debugger. Supponiamo di aver installato il modulo "CRM Custom Fields" nella cartella:

/home/myuser/odoo-dev/addons/crm_custom_fields

Apriamo il file:

/home/myuser/odoo-dev/addons/crm_custom_fields/models/ir_model.py

e mettiamo un breakpoint sulla riga 6 con scritto: _inherit = "ir.model"

Se abbiamo fatto tutto per bene, dopo il riavvio del debugger, l'esecuzione si fermerà su quella riga e da li potremo ispezionare i valori delle variabili attive in quel momento.

Ora siamo pronti a sviluppare i nostri moduli, usufruendo del potente ambiente di lavoro messoci a disposizione da PyCharm.

Un ultima nota:

Python è un linguaggio dinamico che permette di modificare gli oggetti a runtime. Odoo utilizza questa potenzialità per attivare un particolare sistema non standard di ereditarietà degli oggetti. Questo limita un po' le grandi potenzialità di PyCharm in fatto di auto completamento in fase di scrittura del codice, ma è un problema con cui si può e si deve convivere.