Hi Marius,
On 29 May 2014 at 07:35:24, Marius Dumitru Florea
(mariusdumitru.florea@xwiki.com(mailto:mariusdumitru.florea@xwiki.com)) wrote:
On Wed, May 28, 2014 at 4:19 PM, vincent(a)massol.net
wrote:
Hi devs,
Right now our practice in XWiki Platform for the apps we develop is to move to storing
all the pages of an app in a single space.
See
http://dev.xwiki.org/xwiki/bin/view/Community/ApplicationDevelopmentBestPra…,
specifically:
“
Generally, put all your pages in a single space dedicated for the application you're
developing (e.g. Faq, Scheduler, IRC, AppWithinMinutes, etc). The name must be as short as
possible while still being understandable of course and without overusing abbreviations.
"
Now there are potentially some use cases that may warrant to have 2 spaces: one for the
content documents and one for the technical documents:
- ability to easily set permissions on all technical pages so that only a group of person
can modify them but allow another group of persons to edit the content pages (e.g. for the
Blog application)
- easier to remove all the content pages of an app but still keep the app working
So one idea would be systematically have 2 spaces for apps:
- one XXX space (e.g. Blog space) for holding content pages
- one XXXCode space (e.g. BlogCode space) for holding technical pages
Of course all technical pages are hidden and thus the XXXCode space will not appear in
the list of spaces or searches by default.
WDYT? Would you be ok to modify all our existing
apps to go in that direction?
I'm not sure this fits all the applications. E.g. Activity stream,
Administration, Annotations. It makes (more) sense when the
application creates data documents that the user is aware of and which
he can edit directly. The user goes to each document to view and edit
it. The application doesn't make changes on his behalf, under the
hood.
+1 for having a dedicated code space in this case.
I’m assuming you were answering to the following which was in my last email
"
Yes indeed. So let’s refine the definition:
- one XXX space (e.g. Blog space) for holding content pages and UI pages
- one XXXCode space (e.g. BlogCode space) for holding technical pages
Thanks
-Vincent
“
In the case of applications that don’t produce content pages and that don’t have any UI
pages, they’d just use a XXXCode space and there would be no XXX space.
For example the Activity Stream app has no UI and doesn’t produce any content page so
indeed its 2 pages would go in the ActivityStreamCode space.
WDYT?
Thanks
-Vincent
> Note: A future solution is to use nested spaces
but even with nested spaces the need for 2 spaces would be the same. We would just need to
make the XXXCode space a subspace of the XXX space (assuming we can set permissions on
subspaces ;)).
>
> Thanks
> -Vincent