Package: pelican_admin
pelican_adminpelican_adminwas developed to assist you manage yourPelicanblog.This is a beta release and will have upcoming new features.Contentspelican_adminUsageThe LooksNew FeaturesBugfixesKnown IssuesOld FeaturesRequirementsInstallationMigration From Older VersionsCheck This OutContactUsageInsertpelican_adminto the end of your INSTALLED_APPS in settings.py:INSTALLED_APPS = (
    ...
    'pelican_admin',
    ...
)Now, you must tellpelican_adminwhat’s the path to you pelican blog. In your settings.py you must add:PELICAN_PATH = '/path/to/your/blog'
PELICAN_SETTINGS = 'your_pelican_settings.py # The default value is 'pelicanconf.py'
PELICAN_BIN = 'pelican' # Path to pelican executable. Default value is '/usr/local/bin/pelican'Don’t forget to sync your db with:python manage.py syncdbOr, if you’re usingsouth:python manage.py migrate pelican_adminpelican_adminis already set to runPelican’s service for you. It’ll be running in the autoreload mode in the background.If you’re usingdjango-admin-toolsthere’s a module available where you can manage your pelican service via admin interface. Addpelican_adminto your urls.py:import pelican_admin

url_patterns = patterns('',
url(r'^admin/', include(admin.site.urls)),
    url(r'^admin_tools/', include('admin_tools.urls')),
        ...
)

urlpatterns += pelican_admin.pelican_urls()And finally, addpelican_admin’s module to your dashboard.py:from pelican_admin.modules import PelicanAdmin

class CustomIndexDashboard(Dashboard):

def init_with_context(self, context):
                ...
        self.children.append(PelicanAdmin())This module is super useful not only to checkPelican’s service status, but also to reload it if any change you made doesn’t load.If you experience any troubles in this step and yourdjango-admin-toolsinterface is scrambled, you may have too many modules in your dashboard. I never found out why, but my experience withdjango-admin-toolsnever allowed lots of modules, so just try removing some things you don’t use.The LooksThis is howpelican_admin’s module fordjango-admin-toolslooks like when enabled:New FeaturesMetadata management: Now you can manage your posts’ metadatas via interface since, now, they’re attributes of your posts.Category model: Thoughcategoryis just another post metadata, it was made to be an model to ease filtering, insertion, etc.View Draft button: In the blog post edit page there’s a new button calledView Draftto help you visualise the post you’re writing in your blog. It simply set thestatusmetadata asdraftin that post.Better post management: Blog posts had a very bad management earlier. Now the model list page has filters, more fields being displayed, search, date hierarchy, etc.BugfixesEncoding issues: Some people were experiencing encoding issues whenpelican_adminattempted to write special characters. Some of it were solved, but if you find any mode problems, please, let me know.Slow build: Due to poor programming,pelican_adminwas taking a very long time to run it’s __init__.pyKnown Issuespelican_adminis runningPelican’s service in background as a subprocess, but I wasn’t able to kill it when python dies. Currently there’s a method registered inatexittherefore, if python dies normally, the background service is killed with no trouble, but if python crashes, the method registered isn’t called andPelican’s service may still be running in background.Other than that, when you’re running Django in “development mode” (manage.py runserver), every time you update aSettinginpelican_admin, Django is reloading. I’m still to find out why.Ifpelicanraises an Exception from within it’s Generators,pelican_adminthinks it’s still running since the subprocess doesn’t die, even though it’s running in the background. When an Exception like that occurs,pelican’s process simply halts.Old FeaturesSettings management: change your pelican settings through Django admin and have it automatically working.Posting management: CRUD for blog postings via interface.Service management: Manage your pelican service through the admin interfaceInternationalization:pelican_adminis localizable. Currently only pt_BR and en_US are officially supported.RequirementsDjango 1.4+psutil 0.6.1+pelican 3.0+InstallationI’ll just assume you’re already familiarised with pelican and move on.Install using pip:pip install pelican_adminOr you can clone the project and install it via:python setup.py installMigration From Older VersionsWhen you migrate, whether installing from pip or cloning the repository, do not forget to sync the app. You can either do it through Django or using south, though south is better because you won’t lose any data.Check This OutGitHub RepositoryPyPi packageOwner’s websiteOwner’s BlogContactIf you have any comments, ideas questions, feedback, etcetera, email me and we’ll be in touch. I’mflavio@vieiracaetano.com