تخطي للذهاب إلى المحتوى
القائمة
لقد تم الإبلاغ عن هذا السؤال
1 الرد
3823 أدوات العرض

I have 2 classes and with Many2one-relation. How can i display  the title from class A in a form view from class B (title_from_a)?

The form view for class B does not show the title, but after saving it shows the title. is there a solution?


class A(models.Model):

    _name = 'class.a'

    title = fields.Char('Title')

    b_ids = fields.One2Many('class.b', 'a_id')


class B(models.Model):

    _name = 'class.b'

    a_id = fields.Many2one('class.a')

    title_from_a = fields.Char(related='a_id.title')


الصورة الرمزية
إهمال
أفضل إجابة

Hello ai,

You can give _rec_name for display name in models.

For this, try below code:


class B(models.Model):

    _name = 'class.b'

    _rec_name = 'title_from_a'


    a_id = fields.Many2one('class.a')

    title_from_a = fields.Char(related='a_id.title')


Hope it will works for you.

Thanks,

الصورة الرمزية
إهمال
الكاتب

thanks for your answer, but I would like to have that value for working with it. Is that possible?

When you saved record then title_from_a is display

الكاتب

Yes, but I want to display in a form before and not after saving. is that possible?

If you want to display as display name then it is not possible. if you want to display in form view then select a_id and after selecting a_id automatic display it's title in title_form_a field.

الكاتب

I just want to display in form view of class.b. but title_from_a does not appear on the form view.

Try to give _rec_name to class a.

For Ex:

class A(models.Model):

_name = 'class.a'

_rec_name = 'title'

title = fields.Char('Title')

b_ids = fields.One2Many('class.b', 'a_id')

الكاتب

it does not work. title_from_a is still empty. ;(

المنشورات ذات الصلة الردود أدوات العرض النشاط
0
نوفمبر 18
3005
0
يوليو 21
3122
2
نوفمبر 24
15235
3
يوليو 22
7866
1
مايو 24
3184