Management commands

Database schema checker

feincms.management.checker.check_database_schema(cls, module_name)

Returns a function which inspects the database table of the passed class. It checks whether all fields in the model are available on the database too. This is especially helpful for models with an extension mechanism, where the extension might be activated after syncdb has been run for the first time.

Please note that you have to connect the return value using strong references. Here’s an example how to do this:

signals.post_syncdb.connect(check_database_schema(Page, __name__), weak=False)

(Yes, this is a weak attempt at a substitute for South until we find a way to make South work with FeinCMS’ dynamic model creation.)

Content-type specific management commands

update_rsscontent

update_rsscontent should be run as a cronjob when the RSSContent content type is used – the content type itself does not update the feed by itself.

Page tree rebuilders

Those should not normally be used. Older versions of MPTT sometimes got confused with repeated saves and tree-structure changes. These management commands helped cleaning up the mess.

rebuild_mptt

rebuild_mptt rebuilds your mptt pointers. Only use in emergencies.

rebuild_mptt_direct

rebuild_mptt_direct rebuilds your mptt pointers, bypassing the ORM. Only use in emergencies.

Miscellaneous commands

feincms_validate

feincms_validate checks your models for common pitfalls.