开发者

TabularInlines readonly fields are deleteable

开发者 https://www.devze.com 2023-03-30 16:16 出处:网络
I\'m using TabularInlines for administrate many-to-many relationships in the django admin. When some conditions are met, I want to make the inline read only. To achieve this I override the get_readonl

I'm using TabularInlines for administrate many-to-many relationships in the django admin. When some conditions are met, I want to make the inline read only. To achieve this I override the get_readonly_fields() method from the BaseModelAdmin.

This works like a charm, with the only problem, that the read only fields are still deleteable (the checkbox for the deletion is still there and still works).

Of course I could set the can_delete field in the TabularInline to False but this prevents the deletion also for not read开发者_JAVA技巧 only cases.

My question: How can I set up the TabularInline that I can prohibit the deletion in read only fields and enable it if the fields are read/writeable?

EDIT: I use Django 1.3, but if the solution also works for 1.2 it would be perfect!


I think what you want to do is set has_delete_permission(self, obj=None). That will allow you to decide when you can and cannot delete an entire inline.

0

精彩评论

暂无评论...
验证码 换一张
取 消