Přejít na obsah
Menu
You need to be registered to interact with the community.
This question has been flagged
6 Odpovědi
23854 Zobrazení

class Teachers(models.Model):

_name = 'academy.teachers'

name = fields.Char()

course_ids = fields.One2many('product.template','teacher_id', string="Courses")


class Courses(models.Model):

_name = 'academy.courses'

_inherit = 'product.template'

name = fields.Char()

teacher_id=fields.Many2one('academy.teachers', string="Teacher")



Avatar
Zrušit

These tips will help you: https://goo.gl/8HgnCF

Nejlepší odpověď

@Shivam Mahajan
Your error is because in your Courses class you are creating a new model 'academy.courses' using the model 'product.template' as a prototype. You are not extending the model 'product.template' with the field teacher_id and in your class Teachers you have the field course_ids as a one2many relation with the model 'product.template', that require a field named 'teacher_id' as a many2one to 'academy.teachers' in 'product.template'. 
To fix it you have two options, depending of what you need to do

1- You can change this:

course_ids = fields.One2many('product.template','teacher_id', string="Courses")

to this:

course_ids = fields.One2many('academy.courses','teacher_id', string="Courses")

 
2- Or you can change this:

class Courses(models.Model):

_name = 'academy.courses'

_inherit = 'product.template'

To this:

class Courses(models.Model):

_inherit = 'product.template'

Only use one of the two options. The #1 will keep the prototype inheritance from the model 'product.template' but fix the relation and the #2 will extends the model 'product.template' with the field teacher_id

Your choice

Avatar
Zrušit
Autor

@Axel ..Thanks a lot for the help......It really works

Happy to help you, thanks me with an upvote and accept the answer

Nejlepší odpověď

Hi Shivam,

This type of error occurs if you did not add correct dependency in your module. 

Please check depends in __openerp__.py file in your module. Here in this case add 'product' because you are inheriting product.template

 

'depends': ['base','product',],


Hope this helps.


 

Avatar
Zrušit
Autor

Hi Baiju , Thanks a lot for the response .But I am satisfied by the answer of Axel

Related Posts Odpovědi Zobrazení Aktivita
0
lis 23
1718
2
dub 25
8074
4
dub 19
4898
1
bře 15
18116
1
led 25
1194