我已使用以下视图隐藏了创建按钮
<tree create="false" edit="false" >
它工作正常,但我需要像这样隐藏创建按钮动态方式,
<tree attrs="{'create':[("uid",'=',1)]}" edit="false" >
但它没有用。
答案 0 :(得分:3)
为了使创建按钮仅对uid = 1不可见,最好编写访问记录规则。
如果要使特定组的创建按钮不可见,则继承原始视图并为继承的视图指定组,然后为树视图指定create =“false”属性。点击this获取示例。
答案 1 :(得分:0)
你的想法很好,但遗憾的是'创造'并没有在attrs-attribute中实现。
一些解决方法将是你的第一个选择+你自己实现的新创建按钮,但我认为这有点棘手,我不能说这是否100%可能。
答案 2 :(得分:0)
你不能在树视图中使用attrs创建选项
为什么不在此使用对象访问权限。创建,删除,读取,取消链接,仅为有权创建
的用户授予创建权限请参阅此答案:OpenERP 7 Access Rights for User Roles
此致
答案 3 :(得分:0)
您可以使用此方法并替换类名...
def unlink(self, cr, uid, ids, context=None):
if context is None:
context = {}
for rec in self.browse(cr, uid, ids, context=context):
if rec.state not in ['draft', False]:
raise osv.except_osv(_('Invalid Action!'), _('Cannot delete a record which is in state \'%s\'.') %(rec.state,))
return super(purchase_order, self).unlink(cr, uid, ids, context=context)