/usr/lib/python3/dist-packages/trytond/tests/mptt.py is in tryton-server 4.6.3-2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 | # This file is part of Tryton. The COPYRIGHT file at the top level of
# this repository contains the full copyright notices and license terms.
"Test for Tree"
from sql import Null
from sql.conditionals import Case
from trytond.model import ModelView, ModelSQL, fields
__all__ = [
'MPTT',
]
class MPTT(ModelSQL, ModelView):
'Modified Preorder Tree Traversal'
__name__ = 'test.mptt'
name = fields.Char('Name', required=True)
parent = fields.Many2One('test.mptt', "Parent", select=True,
left="left", right="right")
left = fields.Integer('Left', required=True, select=True)
right = fields.Integer('Right', required=True, select=True)
childs = fields.One2Many('test.mptt', 'parent', 'Children')
active = fields.Boolean('Active')
@classmethod
def validate(cls, record):
super(MPTT, cls).validate(record)
cls.check_recursion(record)
@staticmethod
def order_sequence(tables):
table, _ = tables[None]
return [Case((table.sequence == Null, 0), else_=1), table.sequence]
@staticmethod
def default_active():
return True
@staticmethod
def default_left():
return 0
@staticmethod
def default_right():
return 0
|