Привет, я новичок в разработке как python, так и Odoo. Раньше я использовал веб-интерфейс для настройки. Я пытался создать класс, чтобы
- добавить поле в sale.subscription Model
subscription_tier = fields.Char(string='Subscription Tier',readonly=True)
, который работает, но вторая часть не работает 2. l oop через строку подписки, чтобы узнать, есть ли у клиента подписка silver
или gold
, затем установите его в поле subscription_tier
class subscription_tire_set(models.Model):
_inherit = 'sale.subscription'
subscription_tier = fields.Char(string='Subscription Tier',readonly=True)
@api.depends('recurring_invoice_line_ids.product_id')
def _compute_release_to_pay(self):
for n_subscription in self:
result = None
for n_subscription_line in n_subscription.recurring_invoice_line_ids:
if any(n_subscription_line.product_id) == 'gold':
result = 'gold'
break
else:
result = 'not'
subscription_tier = result
Я, вероятно, делаю что-то ужасное неправильно
также появляется это сообщение при попытке открыть любого клиента в подписке
Что-то пошло не так! sale.subscription(10,).subscription_tier
Заранее благодарю за помощь.
Что у меня сработало:
result = None
for n_subscription_line in n_subscription.recurring_invoice_line_ids:
if n_subscription_line.product_id.name == 'gold'
result = 'gold'
# break
else:
result
n_subscription.subscription_tier = result