Jim G. wrote:
I’ve setup Radiant for a client project and although it is a small
team that is editing it, I have run into a situation where two people
had the same page open and had overwritten each other’s changes.
John, have you (or anyone for that matter) considered adding a
feature that locks the page from editing when someone has it opened?
I’m curious are the arguments for or against this, or if it has even
This is a problem. Locking systems are hard to implement for Web
browsers. Particularly, when one user “opens” a model object for an
indefinite period of time (they leave their Web browser open on the edit
page). Most systems work around this by warning you when you attempt to
edit a page “opened” by someone else, but not preventing you from
editing it if you insist. This can get pretty annoying as models are
invariably left open and repeated warnings aren’t fun.
Perhaps instead of locking, we should add a simple version constraint.
We could add a field to the page called version. Version would be
incredimented every time the page is saved. Before the save the page
would simply verify that the new version is only one higher than the old
version. If the versions were not correct we would know that someone had
edited the page in our absence and could request action from the user.
Would something like that be sufficient? Isn’t there a Rails plugin that
implements something similar?