3 from openerp.osv import osv, fields
5 class theme(osv.Model):
8 _inherit = "mail.thread"
10 def _question_items(self, cr, uid, ids, field, arg, context=None):
12 for theme in self.browse(cr, uid, ids, context=context):
14 for question in theme.questions:
15 res.append({'id': question.id, 'name': question.name, 'answer_items': question.answer_items})
16 result[theme.id] = res
20 "name": fields.char(string="Title", size=64, required=True),
21 "description": fields.text(string="Description"),
22 "questions": fields.one2many("faq.question" , "theme_id", string="Questions"),
23 "question_items": fields.function(_question_items, type="text", string="Question items"),
26 class question(osv.Model):
27 _name = "faq.question"
29 _inherit = "mail.thread"
31 def _answer_items(self, cr, uid, ids, field, arg, context=None):
33 for question in self.browse(cr, uid, ids, context=context):
35 for answer in question.answers:
36 res.append({'id': answer.id, 'name': answer.name})
37 result[question.id] = res
41 "name": fields.char(string="Title", size=64, required=True),
42 "description": fields.text(string="Description"),
43 "theme_id": fields.many2one("faq.theme", string="Theme", required=True),
44 "answers": fields.one2many("faq.answer" , "question_id", string="Answers"),
45 "answer_items": fields.function(_answer_items, type="text", string="Answer items"),
48 class answer(osv.Model):
51 _inherit = "mail.thread"
54 "name": fields.char(string="Title", size=64, required=True),
55 "description": fields.text(string="Description"),
56 "question_id": fields.many2one("faq.question", string="Question", required=True),