Miscellaneous Utilities ======================== We've included a few bonus features that we find useful when developing django apps. Collect SQL Command ------------------- This is a management command to extract SQL operations from your Django migrations and organize them into several master SQL scripts:: python manage.py collect_sql This will extract any SQL statements passed to RunSQL operations and write them to ``current_indexes.sql``, ``current_triggers.sql`` and ``current_functions.sql``. Migrate Manual Command ---------------------- This is a management command to make it easier to run long-running Django data migrations manually. To make a migration compatible with this command, include a function called ``apply_manual`` which takes no parameters:: python manage.py migrate_manual flows 0123 This will manually run the migration in the flows app with the prefix 0123. Django Compressor ----------------- Smartmin already comes with django-compressor support. The default ``base.html`` template will wrap your CSS and JS in ``{% compress %}`` tags in order to optimize your page load times. If you want to enable this, you'll just need to add ``compressor`` to your ``INSTALLED_APPS`` in ``settings.py``:: INSTALLED_APPS = ( # .. other apps .. 'compressor', ) And change the commented out ``{# compress #}`` tags in ``base.html`` to be valid, ie: ``{% compress %}``. PDB Template Tag ---------------- We all love ``pdb.set_trace()`` to help us debug problems, but sometimes you want to do the same thing in a template. The smartmin template tags include just that:: {% pdb %} Will throw you into a pdb session when it hits that tag. You can examine variables in the session (including the request) and debug your template live.