Merge lp:~openerp-dev/openobject-server/6.1-opw-575655-rha into lp:openobject-server/6.1
Status: | Rejected |
---|---|
Rejected by: | Olivier Dony (Odoo) |
Proposed branch: | lp:~openerp-dev/openobject-server/6.1-opw-575655-rha |
Merge into: | lp:openobject-server/6.1 |
Diff against target: |
45 lines (+20/-1) 1 file modified
openerp/osv/orm.py (+20/-1) |
To merge this branch: | bzr merge lp:~openerp-dev/openobject-server/6.1-opw-575655-rha |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Olivier Dony (Odoo) | Disapprove | ||
Naresh(OpenERP) | Pending | ||
Review via email: mp+109792@code.launchpad.net |
Description of the change
Hello,
Changed field attribute to readonly when we provide group in read on field definition.
'test': fields.char('Test', size=64, read=['
This field will be grey out for the user who belongs to above read group.
Currently user is not able to change the value if he has read access, it always resets but we can face problem
with on_change(), on_chnage event always take value from user interface so it may raise
problem.
Furthermore, user won't be able to see the field(invisible) if he doesn't belong to read or write
group.
Thanks for your review.
Regards,
Rifakat Haradwala
Unmerged revisions
- 4207. By Rifakat Husen (OpenERP)
-
[FIX] improved fix to check model access security group
- 4206. By Rifakat Husen (OpenERP)
-
[FIX] orm: changed field attribute based on the read and write group assigned on the field
* if group has read access on the field then that field will be greyed out for that user
* if user of the group doesn't belong to read or write then it will be invisible
Hi,
Unfortunately the `read` and `write` attributes on OpenERP fields are an artifact of past experimentation, and never fully functional. They are hidden and undocumented, and none of the official OpenERP modules use them, for this very reason. In fact we should have removed them a while ago, but this was apparently overlooked.
In any case, it is not a good idea to use or depend on them, because they are not part of the system design. This patch may slightly change and possibly improve the way they are used, but they are many more areas where users might experience strange behaviors.
We also cannot allow patching this experimental/ deprecated part of the system in a stable release because it is located in a core area, and any patch there will possibly introduce dangerous regressions. As all customers in production are not supposed to be using this, there is no sense in compromising the stability of the system for every customer just because someone had the idea of digging into the code and playing with that experimental part, sorry.
For all of the above reason, we have to reject this merge proposal, even though the patch might be interesting for anyone who would like to develop some custom behavior based on these experimental idea.
I hope you understand this decision...
Thanks!