165 | | Row-level permissions can be edited in the admin interface, on the change form for each object with row-level permissions enabled is a link beside History to edit row level permissions. To edit row level permissions, you must have the change RLP permission and change permission on the object. To add row level permissions, you must have the add RLP permisison and change permission on the object. |
166 | | |
167 | | By default, all instances of a model are shown to a user when they access the change list for a model. To turn off this behaviour, you must set the ''show_all_rows'' admin option to false. Doing this will increase the number of database queries made to the server, which is why the default option is that all rows are shown. An example: |
168 | | |
169 | | {{{ |
170 | | #!python |
171 | | ... |
| 165 | Row-level permissions can be edited in the admin interface. On the change form for each object with row-level permissions enabled is a link beside History to edit row-level permissions. To edit row-level permissions, you must have the "change RLP" permission ''and'' change permission on the object. To add row-level permissions, you must have the "add RLP" permisison ''and'' change permission on the object. |
| 166 | |
| 167 | By default, all instances of a model are shown to a user when they access the change list for a model. To turn off this behavior, set the {{{show_all_rows}}} {{{class Admin}}} option to {{{False}}}. Doing this will increase the number of database queries made to the server, which is why the default option is that all rows are shown. Example: |
| 168 | |
| 169 | {{{ |
| 170 | #!python |
207 | | ... |
208 | | }}} |
209 | | |
210 | | == Implementation Notes == |
211 | | |
212 | | Please see RowLevelPermissionsDeveloper for more information on how row level permissions are implemented. |
213 | | |
214 | | == Known Bugs == |
215 | | * Connecting more then one "owner" to the RLP model causes a M2M conflict, this is a bug with the generic relation code. Work around for now is to rename the related_name for each different owner. - ''This is a bug with generic relations, see ticket #2573'' |
216 | | * Row level permissions can not have row level permissions enabled |
217 | | * Error message in admin interface is displayed with a checkmark not an error icon |
218 | | |
219 | | |
220 | | == Download == |
221 | | |
222 | | Row Level Permissions are currently hosted in a branch on Django SVN. Please use: ''svn co http://code.djangoproject.com/svn/django/branches/per-object-permissions'' to download the current code. |
| 203 | }}} |
| 204 | |
| 205 | == Implementation notes == |
| 206 | |
| 207 | Please see RowLevelPermissionsDeveloper for more information on how row-level permissions are implemented. |
| 208 | |
| 209 | == Known bugs == |
| 210 | |
| 211 | * Connecting more then one "owner" to the RLP model causes a many-to-many conflict. This is a bug with the generic relation code. The workaround for now is to rename the {{{related_name}}} for each different owner. (See ticket #2573 for the bug with generic relations.) |
| 212 | * Row-level permission objects cannot have row-level permissions enabled. |
| 213 | * The error message in the admin interface is displayed with a checkmark, not an error icon. |