콘텐츠로 건너뛰기
메뉴
커뮤니티에 참여하려면 회원 가입을 하시기 바랍니다.
신고된 질문입니다
1 회신
4139 화면

I am trying to add a computed method to the event.booth model in Odoo 15

These are my attempts:

#1

class EventBooth(models.Model):
_inherit = 'event.booth'

super.name = fields.Char(string='Name', translate=True, compute='_compute_name')


#2

class EventBooth(models.Model):
_inherit = 'event.booth'

name = fields.Char(string='Name', translate=True, compute='_compute_name')

#3

class EventBooth(models.Model):
_inherit = 'event.booth'

super(EventBooth, self).name = fields.Char(string='Name', translate=True, compute='_compute_name')


I have noticed, that event.booth doesnt have a name field directly, rather it inherits its name field from a model called 'event.type.booth'. By default, the name field on event.type.booth is not a computed field.

Thank you for your help.







아바타
취소
작성자

This is what the computed method looks like

@api.depends('halle_id.name', 'start_number', 'end_number')
def _compute_name(self):
for record in self:
try:
record.name = "{} | {}-{}".format(record.halle_id.name, str(record.start_number), str(record.end_number))
except:
record.name = "Stand"

The second approach must work. Are there any specific errors you get?

베스트 답변

Hi Josef Schmid,
Please try with this.

class Eventbooth(models.Model):
_inherit = "event.booth"

name = fields.Char(string='Name', translate=True, compute='_compute_name')

@api.depends('halle_id.name', 'start_number', 'end_number')
def _compute_name(self):
for record in self:
try:
record.name = "{} | {}-{}".format(record.halle_id.name, str(record.start_number), str(record.end_number))
except:
record.name = "Stand"


Don't Forgot to add the "event_booth" Module into the depends of  you custom module manifest file:

        'depends': [ 'event_booth']

If it's help you, Please vote the Answer.

아바타
취소
관련 게시물 답글 화면 활동
1
1월 24
3109
1
7월 25
2326
1
2월 24
1728
2
12월 22
12768
1
5월 24
2572