我们想让模块只读。点击父菜单后,所有子菜单也应该是只读的。 试过fields_view_get()
但是有太多的表单来编写这个方法! 那么有没有其他的方式来做到这一点。我们根据特定日期永久禁用模块。 请帮忙。在特定时间之后有什么办法可以取消模块访问吗?
0
A
回答
0
,您可以按照实现,这将取决于什么样的访问你的用户的算法有你的服务器。如果他们无法访问“设置”菜单,那么您可以做的是每X分钟运行一次cron作业,以验证其模块的订阅。
如果cron作业认定其认购无效,你想使某些菜单无法点击或阅读一些看法只有你才能对数据库运行下面的查询找出什么看法做一个特定的模块创建:
select * from ir_model_data where module = 'your_module_name';
的ir_model_data
模型实际上包含了你的模块包含数据的所有按键。您使用XML文件(或不是)创建的所有菜单,视图,组等都在那里。
一旦你在你的光标的所有记录,你可以cr.fetchall()
,然后循环的返回值。每个记录将有一个model
和一个res_id
。当您看到您拥有一个您感兴趣的菜单或视图时,您可以将其active
字段设置为false以完全隐藏视图或菜单。
当您在结果循环,并找到一个场(即是具有model='ir.model.fields'
的记录,你可以在readonly
字段设置为True,这样该领域是只读的。您可以为每一个领域做到这一点。
正如你可以理解的,这种方法并不是防弹的,如果你的用户可以访问设置(即管理员权限),那么你不能使用Odoo的cron作业,而是配置一个cron作业从你的操作系统运行来调用一个外部Python脚本,将做上述过程。
另外,如果你只读设置的意见/菜单/场,他们可能会被渲染成只读的网络浏览器,但是没有任何东西阻止最终用户制作rpc请求并发送不适当的json数据。
如果用户有您的服务器的SSH访问权限有没有什么可以做的。
相关问题
- 1. 有什么办法可以在Python中访问模块的私有函数吗?
- 2. 有什么办法可以模拟坏块吗?
- 3. 有什么办法可以改善TCP连接时间吗?
- 4. 有没有什么办法可以得到最后一次facebook访问时间的日期(时间戳)?
- 5. 有什么办法可以这样吗?
- 6. 有什么办法可以取消在Appengine中删除索引?
- 7. 有什么办法可以在Kivy中取消UrlRequest?
- 8. Javascript模块模式 - 所有模块都可以访问eachother吗?
- 9. 有什么办法可以在从conatiner div中取出吗?
- 10. 有什么办法可以访问所有的android通知?
- 11. 有什么办法可以在HTML中自定义alertbox吗?
- 12. 在zend框架中,有没有什么办法可以在不同的模块之间进行交互?
- 13. 有什么办法可以取消鼠标点击事件
- 14. 有什么办法可以用kqueue/kevent模拟epoll_wait吗?
- 15. 有什么办法可以取消IOS中的IBM worklight请求吗
- 16. 有什么办法可以用python 3.x访问Protocol Buffers?
- 17. 有什么办法可以动态访问超全球?
- 18. 有什么办法可以全局获取脚本文件吗?
- 19. 有什么办法可以调用instagram api而不需要访问令牌吗
- 20. 有什么办法可以访问Visual Studio Shell中使用的图标吗?
- 21. 有什么办法可以访问react-native中的对象属性数组吗?
- 22. 有什么办法可以指定os.path的平台吗?
- 23. 有什么办法可以重定向smbclient的输出吗?
- 24. 有什么办法可以增加Z3模型的内存空间吗?
- 25. 有什么办法可以禁用Android应用的特定推送通知吗?
- 26. 有没有什么办法可以在ScrollView之外使用SliverGrid?
- 27. 有没有什么办法可以在Swift中引用当前模块?
- 28. 有没有什么办法可以在jQuery中捕捉空间
- 29. 有什么办法可以在iPhone中解析微软excel吗?
- 30. 有什么办法可以在Unix中执行.cmd文件吗?
究竟你读的意思只有当你谈论的模块和子菜单? –
“禁用模块”是什么意思?你想让你的模块在一段时间后停止工作吗? – Majikat
@GeorgeDaramouskas我们的要求太过于过时,只能将旧数据库中的数据保持为只读。我们正在迁移,但现在想保留旧数据/流程,而不让用户在特定日期之后创建新数据。基本上所有的形式都是只读的。 – Meg