Odoo - Как управлять и обновлять файлы Stati c - PullRequest
0 голосов
/ 24 марта 2020

Stati c Файлы в Odoo

Я новичок в Odoo и работаю над созданием пользовательской темы для клиента. Я работал над темой tutorial , несмотря на множество ошибок и упущений, существующих в этой документации (собираюсь сделать запрос на обновление, чтобы обновить его после того, как я закончу). Моя последняя борьба связана со стати c файлами в Odoo, в частности с изображениями в теме.

Настройка

Запуск Odoo 13.0.20200323 на Ubuntu 18.04 в VirtualBox, управляемом Vagrant и снабжаемым Ansible

Проблема

Изменения файлов изображений в папке stati c не отображаются на веб-сайте. Это включает в себя обновление темы в настройках темы сайта (кажется, что функция обновления обновляет все остальное). Я изменил названия изображений, содержимое изображений, переместил их в другую папку и не смог выяснить, как обновлять изменения на веб-сайте. Я перезапустил сервер, ничего не меняет. Обновил тему, как указано выше, не работает. Единственный способ, которым мне удалось отразить любые изменения на внешнем интерфейсе, это полностью уничтожить и восстановить сервер.

Вопросы

  1. Чего мне не хватает? Есть ли у меня функция, которая не запускает Odoo для обновления того, что она обслуживает, из папки stati c?

  2. Как Odoo работает с файлами stati c в целом? Обновления файлов в папке stati c на лету, похоже, не претерпели никаких изменений во внешнем интерфейсе. Файлы в папке stati c копируются куда-то еще при установке, а затем отправляются из этого другого места?

Понимание

Я понимаю, что изображения и другие файлы меняются в папке с именем stati c, функционально не имеет особого смысла, и я не собираюсь этого делать. Поскольку я нахожусь в разработке, мне нужно вносить изменения в файлы, такие как S CSS, JS и изображения, и отображать эти обновления во внешнем интерфейсе без необходимости каждый раз уничтожать и перестраивать сервер. Чтобы быть понятным, изменения в файлах S CSS и JS, которые я зарегистрировал. Файлы xml и связанные с различными пакетами Odoo, обновляются очень хорошо, когда я вносю в них изменения, а затем обновляю тему в бэкэнде в представление управления темами.

Я хочу понять, как Odoo в целом обрабатывает файлы в папке stati c, как правильно обновлять эти файлы и как управлять ими при разработке и выпуске.

1 Ответ

0 голосов
/ 24 марта 2020

Ответы

  1. Я нашел ответ на первую часть вопроса о том, что я делаю неправильно. Это похоже на проблему кеширования браузера. При выполнении полной перезагрузки пустой кэш и принудительная перезагрузка или посещение сайта в окне в режиме инкогнито изменения отражаются на изображениях.
  2. Насколько я могу судить, Odoo просто обслуживает файлы из папки stati c непосредственно. Пожалуйста, исправьте меня, если это не так.

Последующие действия

У кого-нибудь есть хорошее решение для работы с такими изменениями и решения проблем кэширования в браузере?

Ответ: Я создал пару задач gulp, использующих gulp-rev (заменит gulp-rev-all скоро) rev-del и rev-rewrite для обработки кеша путем добавления хэшей к именам файлов.

Я собираюсь попробовать настроить браузер -syn c в режиме прокси, чтобы увидеть, как это работает с изменениями файлов при перезагрузке. Я сообщу о том, что я нашел!

Обновление: Browser-syn c работает хорошо, как и ожидалось. Но было бесполезно, пока я не понял, как решить проблему ниже

Кто-нибудь знает, как автоматизировать Odoo, перестраивая S CSS, JS et c. Пучки? Чтобы при изменении файла можно было обновлять тему и просматривать результаты без необходимости вручную обновлять тему на сервере, чтобы увидеть результаты?

Ответ: Основной задачей было выяснить, как заставить работать живые обновления HTML / XML. Это означало создание Odoo из исходного кода, а не внесение каких-либо обновлений или изменений в тему на бэкэнде или во внешнем интерфейсе из интерфейса Odoo. Передача параметра --dev xml в Odoo при запуске его с помощью odoo-bin позволяет напрямую оценивать код XML и делает возможным оперативное обновление. Но эта чрезвычайно полезная (почти необходимая) функциональность нарушается, когда вы делаете любые обновления для них из Odoo. Я сообщу о любых обходных путях к этому, но пока, пока я не касаюсь темы изнутри Odoo (обновляю тему или редактирую ее с помощью своего редактора), тогда она прекрасно работает. Кроме того, мне пришлось сначала обойти связывание моих CSS и JS с их упаковщиком, чтобы эти обновления работали вживую, но, возможно, теперь можно будет go вернуть их обратно и восстановить их теперь, когда код оценивается напрямую.

⭐️Boilerplate и Tutorial Series ⭐️

Я собираюсь набрать весь свой процесс создания тем, а затем я поделюсь образцом и инструментами сборки на GitHub, а также напишу и снимаю серию уроков в теме. Поскольку встроенная документация по этому фронту заполнена ошибками, исключается критическая информация, а также

...