Как создать и развернуть веб-приложения Python

Поле compute в odoo по умолчанию readonly=True и store=False. Вы можете установить store=True, просто передав его в определение поля, но чтобы сделать поле compute доступным / не только для чтения, вы должны передать inverse в определении поля, которое является строковым значением, именем функции то есть, когда значение поля вычислений устанавливается вручную. Идея состоит в том, чтобы вычислить значение depends для поля, упомянутого в @api.depends, декоратор. Поэтому, если вы устанавливаете значение поля compute с помощью ручного ввода, то вам может понадобиться функция inverse, которая соответственно установит соответствующее поле depends.

field_a = fields.Char("Field A")
field_b = fields.Char("Field B", compute="_compute_field_b", inverse="_set_field_b")
field_selection = fields.Selection([('choice_a', "Choice A"), ('choice_b', "Choice B")]) 

@api.multi 
@api.depends('field_selection, field_a')
def _compute_field_b(self):
    for res in self:
        if res.selection_choice == 'choice_a':
            res.field_b = res.field_a
        else:
            res.field_b = ""

@api.multi
def _set_field_b(self):
    for res in self:
         if res.field_selection == 'choice_a':
            res.field_a = res.field_b

Если вам не нужны какие-либо функции inverse при установке значения возврата, вы можете просто return True ничего не делать. Это сделает вычислительное поле редактируемым.

18
задан sverrejoh 3 October 2008 в 10:57
поделиться

5 ответов

Дорожный бетоноукладчик является обстреливать/делать работой одинаково для Python. Я не знаю, является ли это тем, что Ваш поиск, все еще ничто не нашли эквивалентным марионетке для Python...

1
ответ дан 30 November 2019 в 09:44
поделиться

SCons сделал бы то, что Вы хотите?

http://www.scons.org/

0
ответ дан 30 November 2019 в 09:44
поделиться

pyinstall похож на него, должно быть простое решение для Вас. По крайней мере, до упаковки материала Python и установки в virtualenv идет. Я не знаю о pythonic способе реализовать конфигурацию сервера...

0
ответ дан 30 November 2019 в 09:44
поделиться

Я использую Подвижный в качестве своей системы SCM, и также для развертывания также. Это - просто вопрос клонирования репозитория от другого, и затем получение по запросу/обновление или выборка получат его актуальный.

я использую несколько экземпляров репозитория - один на сервере разработки, один (или больше, в зависимости от обстоятельства) на моей локальной машине, один на рабочем сервере и одном 'Основном' репозитории, который доступен большему Интернету (хотя только SSH).

единственная вещь, которую это не делает, автоматически обновить базу данных, если это изменяется, но с входящими рычагами я мог бы, вероятно, сделать это также.

0
ответ дан 30 November 2019 в 09:44
поделиться

Зависит от того, какова ваша инфраструктура. Мы просто используем пакеты debian и buildbot для их создания.

На других установках я использую Fabric скрипты. Что касается формата, я просто использую файлы tbz2, но я слышал о людях, которые просто деплоят яйца.

Я бы настоятельно рекомендовал иметь правильную сборку и иметь BuildBot/Hudson для сборки пакетов, так как использование SCM бьет по цели и поощряет плохую практику.

2
ответ дан 30 November 2019 в 09:44
поделиться
Другие вопросы по тегам:

Похожие вопросы: