2015-08-31 145 views
3

我有一些類似於account.voucher.receipt.dialog.form的窗體視圖,位於文件中: /addons_path/account_voucher/voucher_payment_receipt_view.xml如何在Odoo中預先獲得默認的字段值?

  • 一些field標籤獲得其在模型中定義的默認值,

  • 一些field標籤從變化的方法(通過on_change屬性定義)獲得其默認值。

我想繞過這些表單視圖和自動化過程,所以我需要提前知道這些默認字段值。 這樣,我只需要根據需要添加其他字段值,然後在模型上調用create方法。

我正在使用Odoo v8。

我該如何做到這一點?

回答

2

如果你想在日誌中打印,你可以做這個模型的所有默認值:

from inspect import isfunction 

@api.multi 
def get_default_fields(self): 
    for key, value in self._fields.iteritems(): 
     if value.name not in models.MAGIC_COLUMNS: 
      if self._defaults.get(value.name, False): 
       if isfunction(self._defaults[value.name]): 
        _logger.debug(self._defaults[value.name](
         self, self.env.cr, self.env.uid, None 
        )) 
       else: 
        _logger.debug(self._defaults[value.name]) 

我想你可以將此代碼適應您的需求。

如果你想得到由onchange方法分配的一個字段的值,可能你必須手動運行該方法

相關問題