我在Tryton上使用GNU Health,并希望在视图中使用PYSON和与当前用户相关的字段进行域搜索。问题是我不知道如何引用与当前用户相关的字段。
我想检查用户是否为is_healthprof,以及是否使用当前用户的lastname字段作为健康专业人员姓氏进行过滤,以便用户只能看到与他相关的数据。我在我的xml视图文件中尝试了以下代码,但由于我不知道如何操作,这个技巧无效。
<field name="domain">[('appointment_date', '>=', DateTime(hour=0, minute=0, second=0, microsecond=0)),(If(Eval('party.party.is_healthprof', -1),('healthprof.lastname','=',party.party.lastname)))]</field>
先谢谢!
答案 0 :(得分:0)
您应该添加一个取决于用户的is_healthproft标志的访问规则,而不是使用域。参见:
http://doc.tryton.org/3.8/trytond/doc/topics/access_rights.html?highlight=access
使用访问规则将为模型上的每个操作强制执行域,因此,如果用户访问关系字段的模型或执行其他操作,则访问规则也将适用。
BTW,我认为最好为Healtproft创建一个用户组并将用户与该组关联(以及访问组),而不是在用户中创建一个标志以表明是否是healthproft。
希望它有所帮助。