localwiki / localwiki-backend-server

Primary LocalWiki backend server environment
GNU General Public License v2.0
48 stars 16 forks source link

Fix underlying user page storage #14

Open philipn opened 9 years ago

philipn commented 9 years ago

From @philipn on February 23, 2014 11:52

Right now, this is a huge mess.

For now, we're using a hacky multiple-user-page-content approach. We only technically allow a single URL for /Users/, but the underlying /page content/ is stored on a particular region. The heuristics of which region are somewhat hacky.

We should move all user page content into a special administrative region, 'users', and smash together multiple user pages for the same user, as follows:

  * migration for user page singularization:

    for u in User.objects.all():
        # Find all user pages 

        # Pick best user page

        # Move it into the 'main' region for now. Or make a 'users' region? :o

    leftover_user_pages = Page.objects.filter(slug__istartswith('users/').exclude(region=user_region)
    # Delete all leftover user pages?

What's blocking this is #42, as we otherwise have no way of letting people know their user pages have been edited, or a way to follow others' user pages. Because this is so important for communication, we're using the hacky user-page-on-region approach right now. Let's move to a single-user-page-content as soon as we have notifications in place.

Another issue will be dealing with the page render context and links. What does a link to "Parks" mean here? I think we should figure out inter-region linking and then render each of these as an inter-region link and remove the 'region' context.

Copied from original issue: localwiki/localwiki#687