Editor online

Vizualizarea Editor online permite editarea codului sursă al build-urilor dvs. dintr-un browser web. De asemenea, vă oferă posibilitatea de a deschide terminale, console Python, console Odoo shell și Jupyter Notebooks.

Prezentare generală a editorului online

Puteți accesa editorul unui build prin fila ramurilor, meniul drop-down al build-urilor, sau adăugând /odoo-sh/editor la URL-ul build-ului (de exemplu, https://odoo-addons-master-1.dev.odoo.com/odoo-sh/editor).

Editarea codului sursă

Directorul de lucru este compus din următoarele:

.
├── home
│    └── odoo
│         ├── src
│         │    ├── odoo                Odoo Community source code
│         │    │    └── odoo-bin       Odoo server executable
│         │    ├── enterprise          Odoo Enterprise source code
│         │    ├── themes              Odoo Themes source code
│         │    └── user                Your repository branch source code
│         ├── data
│         │    ├── filestore           Database attachments, as well as the files of binary fields
│         │    └── sessions            Visitors and users sessions
│         └── logs
│              ├── install.log         Database installation logs
│              ├── odoo.log            Running server logs
│              ├── update.log          Database updates logs
│              └── pip.log             Python packages installation logs

Poți edita codul sursă (fișierele din /src) pentru build-urile de dezvoltare și staging. Pentru build-urile de producție, codul sursă este doar pentru citire, deoarece aplicarea modificărilor locale pe un server de producție nu este o practică bună.

Notă

Pentru a deschide un fișier în editor, dă dublu clic pe el în panoul de navigare a fișierelor. Apoi poți edita fișierul. Pentru a salva modificările, accesează File ‣ Save sau folosește comanda rapidă de la tastatură Ctrl+S.

Dacă salvezi un fișier Python în calea addons a serverului tău Odoo, Odoo îl va detecta și se va reîncărca automat, ceea ce înseamnă că modificările tale sunt vizibile imediat.

Modificare a unui fișier Python vizibilă imediat

Cu toate acestea, dacă modificările tale sunt stocate în baza de date, cum ar fi eticheta unui câmp sau o vizualizare, este necesar să actualizezi modulul asociat pentru a aplica modificările. Pentru a actualiza modulul fișierului deschis curent, accesează Odoo ‣ Update current module.

Utilizarea editorului pentru a actualiza modulul curent

Sfat

De asemenea, poți executa următoarea comandă într-un terminal pentru a actualiza un modul:

odoo-bin -u <comma-separated module names> --stop-after-init

Salvarea și trimiterea modificărilor

Pentru a salva și trimite modificările către depozitul tău GitHub:

  • Deschide un terminal accesând File ‣ New ‣ Terminal.

  • Schimbă directorul în ~/src/user.

    cd ~/src/user
    
  • Declară identitatea ta.

    git config --global user.email "you@example.com" && git config --global user.name "Your Name"
    
  • Pregătește modificările.

    git add
    
  • Comite modificările.

    git commit
    
  • Încarcă modificările.

    git push https HEAD:<branch>
    

    În această comandă:

    • https este numele depozitului HTTPS GitHub la distanță (de exemplu, https://github.com/username/repository.git).

    • HEAD este referința către cea mai recentă revizuire pe care ai comis-o.

    • <branch> trebuie înlocuit cu numele ramurii către care dorești să încarci modificările, cel mai probabil ramura curentă dacă lucrezi la o versiune de dezvoltare.

Vi se va solicita să introduceți numele de utilizator și parola GitHub. După introducerea acreditivărilor, apăsați enter.

Comenzile pentru a comite și încărca modificările

Sfat

Dacă activează autentificarea în doi pași pentru contul GitHub, poți crea un token de acces personal și să-l folosești ca parolă. Acordarea permisiunii repo este suficientă.

Notă

  • Nu este posibil să te autentifici folosind SSH, deoarece cheia privată SSH nu este găzduită în containerele de compilare din motive de securitate, nici transmisă printr-un agent SSH, deoarece accesezi editorul printr-un browser web.

  • Dosarul sursă ~/src/user nu este extras pe o ramură, ci pe o revizuire detașată. Aceasta se datorează faptului că compilările lucrează pe revizuiri specifice, nu pe ramuri, ceea ce înseamnă că poți avea mai multe compilări pe aceeași ramură, dar pe revizuiri diferite.

Odată ce modificările sunt încărcate, conform comportamentului de încărcare a ramurii, o nouă compilare poate fi creată. Poți continua să lucrezi în editorul din care ai încărcat, deoarece va avea aceeași revizuire ca și noua compilare care a fost creată. Cu toate acestea, asigură-te întotdeauna că ești în editorul unei compilări care utilizează cea mai recentă revizuire a ramurii tale.

Console

Poți deschide console Python, care sunt shell-uri interactive IPython. Folosirea acestor console Python (în loc de shell-uri IPython într-un terminal) îți permite să utilizezi capacitățile lor de afișare avansată pentru a afișa obiecte în HTML.

Example

Clasa Pretty afișează listele într-un mod lizibil.

Exemplu de clasă Pretty

Sfat

Folosind pandas poți afișa:

  • Celule dintr-un fișier CSV

    Exemplu pandas CSV
  • Grafice

    exemplu grafic pandas

Puteți deschide console shell Odoo pentru a experimenta cu registrul Odoo și metodele modelului bazei de date. De asemenea, puteți citi sau scrie direct pe înregistrările dvs.

Atenționare

Într-o consolă shell Odoo, tranzacțiile sunt comise automat. Aceasta înseamnă că modificările făcute asupra înregistrărilor sunt aplicate în baza de date. De exemplu, dacă schimbați numele unui utilizator, acesta va fi actualizat și în baza dvs. de date. Prin urmare, folosiți consolele shell Odoo cu atenție pe bazele de date de producție.

Puteți folosi env pentru a invoca modele din registrul bazei de date, de exemplu, env['res.users'].

env['res.users'].search_read([], ['name', 'email', 'login'])
[{'id': 2,
'login': 'admin',
'name': 'Administrator',
'email': 'admin@example.com'}]