Edytor online

Widok Edytor Online umożliwia edycję kodu źródłowego twoich kompilacji z przeglądarki internetowej. Daje również możliwość otwierania terminali, konsoli Pythona, konsoli powłoki Odoo i notatników Jupyter.

Przegąd edytora online

Możesz uzyskać dostęp do edytora kompilacji poprzez zakładkę gałęzi, menu rozwijane kompilacji lub dodając /odoo-sh/editor do adresu URL kompilacji (np. https://odoo-addons-master-1.dev.odoo.com/odoo-sh/editor).

Edycja kodu źródłowego

Katalog roboczy składa się z następujących elementów:

.
├── 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

Możesz edytować kod źródłowy (pliki w /src) kompilacji deweloperskich i testowych. Dla kompilacji produkcyjnych kod źródłowy jest dostępny tylko do odczytu, ponieważ stosowanie zmian lokalnych na serwerze produkcyjnym nie jest dobrym zwyczajem.

Informacja

Aby otworzyć plik w edytorze, kliknij go dwukrotnie w panelu przeglądarki plików. Następnie możesz edytować plik. Aby zapisać zmiany, przejdź do File ‣ Save lub użyj skrótu klawiszowego Ctrl+S.

Jeśli zapiszesz plik Pythona w ścieżce dodatków serwera Odoo, Odoo wykryje go i automatycznie przeładuje, co oznacza, że twoje zmiany są natychmiast widoczne.

Zmiana w pliku Pythona natychmiast widoczna

Jeśli jednak twoje zmiany są przechowywane w bazie danych, takie jak etykieta pola lub widok, konieczna jest aktualizacja powiązanego modułu, aby zastosować zmiany. Aby zaktualizować moduł aktualnie otwartego pliku, przejdź do Odoo ‣ Update current module.

Używanie edytora do aktualizacji bieżącego modułu

Wskazówka

Możesz również wykonać następujące polecenie w terminalu, aby zaktualizować moduł:

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

Zatwierdzanie i wysyłanie zmian

Aby zatwierdzić i wysłać zmiany do repozytorium GitHub:

  1. Otwórz terminal, przechodząc do File ‣ New ‣ Terminal.

  2. Zmień katalog na ~/src/user.

cd ~/src/user
  1. Podaj swoją tożsamość.

git config --global user.email "you@example.com" && git config --global user.name "Your Name"
  1. Dodaj swoje zmiany do przechowalni.

git add
  1. Zatwierdź swoje zmiany.

git commit
  1. Wyślij swoje zmiany.

git push https HEAD:<branch>
  • https to nazwa zdalnego repozytorium GitHub z protokołem HTTPS (np. https://github.com/username/repository.git).

  • HEAD to odniesienie do najnowszej rewizji, którą zatwierdziłeś.

  • <branch> musi zostać zastąpione nazwą gałęzi, do której chcesz wypchnąć zmiany, najprawdopodobniej bieżącej gałęzi, jeśli pracujesz na kompilacji deweloperskiej.

Zostaniesz poproszony o podanie nazwy użytkownika i hasła GitHub. Po wprowadzeniu danych logowania naciśnij enter.

Polecenia do zatwierdzania i wypychania zmian

Wskazówka

Jeśli aktywujesz uwierzytelnianie dwuskładnikowe dla swojego konta GitHub, możesz utworzyć osobisty token dostępu i użyć go jako hasła. Wystarczy przyznanie uprawnienia repo.

Informacja

  • Nie jest możliwe uwierzytelnienie się przy użyciu SSH, ponieważ Twój prywatny klucz SSH nie jest przechowywany w kontenerach kompilacji ze względów bezpieczeństwa ani przekazywany przez agenta SSH, ponieważ uzyskujesz dostęp do edytora za pośrednictwem przeglądarki internetowej.

  • Folder źródłowy ~/src/user nie jest pobrany na gałęzi, ale na odłączonej rewizji. Dzieje się tak, ponieważ kompilacje działają na określonych rewisjach, a nie na gałęziach, co oznacza, że możesz mieć wiele kompilacji na tej samej gałęzi, ale na różnych rewisjach.

Po wypchnięciu zmian, zgodnie z zachowaniem wypychania gałęzi, może zostać utworzona nowa kompilacja. Możesz kontynuować pracę w edytorze, z którego wypychałeś, ponieważ będzie miał tę samą rewizję co nowo utworzona kompilacja. Zawsze upewnij się jednak, że pracujesz w edytorze kompilacji używającej najnowszej rewizji Twojej gałęzi.

Konsole

Możesz otwierać konsole Pythona, które są interaktywnymi powłokami IPython. Korzystanie z tych konsol Pythona (zamiast powłok IPython w terminalu) pozwala wykorzystać ich możliwości rozszerzonego wyświetlania do wyświetlania obiektów w formacie HTML.

Example

Klasa Pretty wyświetla listy w czytelny sposób.

Przykład klasy Pretty

Wskazówka

Używając pandas możesz wyświetlić:

  • Komórki pliku CSV

    Przykład CSV w pandas
  • Wykresy

    Przykład wykresu w pandas

Możesz otwierać konsole powłoki Odoo, aby eksperymentować z rejestrem Odoo i metodami modeli Twojej bazy danych. Możesz również bezpośrednio odczytywać lub zapisywać dane na swoich rekordach.

Ostrzeżenie

W konsoli powłoki Odoo transakcje są automatycznie zatwierdzane. Oznacza to, że zmiany wprowadzone w rekordach są stosowane do bazy danych. Na przykład, jeśli zmienisz nazwę użytkownika, zostanie ona zaktualizowana również w Twojej bazie danych. Dlatego używaj konsoli powłoki Odoo ostrożnie w produkcyjnych bazach danych.

Możesz użyć env do wywołania modeli rejestru bazy danych, np. env['res.users'].

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