Commit 7e06b69a authored by Jacob Kaplan-Moss's avatar Jacob Kaplan-Moss
Browse files

Removed outdated "adminindex" command -- the same behavior is now far easier...

Removed outdated "adminindex" command -- the same behavior is now far easier and better done in a template, or perhaps a custom `AdminSite.index` function. Refs #5500.


git-svn-id: http://code.djangoproject.com/svn/django/trunk@8548 bcc190cf-cafb-0310-a4f2-bffc1f526a37
parent ab7eabfc
Loading
Loading
Loading
Loading
+0 −34
Original line number Diff line number Diff line
from django.core.management.base import AppCommand
from django.utils.encoding import force_unicode
from django.utils.text import capfirst

MODULE_TEMPLATE = '''    {%% if perms.%(app)s.%(addperm)s or perms.%(app)s.%(changeperm)s %%}
    <tr>
        <th>{%% if perms.%(app)s.%(changeperm)s %%}<a href="%(app)s/%(mod)s/">{%% endif %%}%(name)s{%% if perms.%(app)s.%(changeperm)s %%}</a>{%% endif %%}</th>
        <td class="x50">{%% if perms.%(app)s.%(addperm)s %%}<a href="%(app)s/%(mod)s/add/" class="addlink">{%% endif %%}Add{%% if perms.%(app)s.%(addperm)s %%}</a>{%% endif %%}</td>
        <td class="x75">{%% if perms.%(app)s.%(changeperm)s %%}<a href="%(app)s/%(mod)s/" class="changelink">{%% endif %%}Change{%% if perms.%(app)s.%(changeperm)s %%}</a>{%% endif %%}</td>
    </tr>
    {%% endif %%}'''

class Command(AppCommand):
    help = 'Prints the admin-index template snippet for the given app name(s).'

    def handle_app(self, app, **options):
        from django.db.models import get_models
        output = []
        app_models = get_models(app)
        app_label = app_models[0]._meta.app_label
        output.append('{%% if perms.%s %%}' % app_label)
        output.append('<div class="module"><h2>%s</h2><table>' % app_label.title())
        for model in app_models:
            if model._meta.admin:
                output.append(MODULE_TEMPLATE % {
                    'app': app_label,
                    'mod': model._meta.module_name,
                    'name': force_unicode(capfirst(model._meta.verbose_name_plural)),
                    'addperm': model._meta.get_add_permission(),
                    'changeperm': model._meta.get_change_permission(),
                })
        output.append('</table></div>')
        output.append('{% endif %}')
        return '\n'.join(output)
+0 −4
Original line number Diff line number Diff line
@@ -449,9 +449,5 @@ uses a template variable called ``app_list``. That variable contains every
installed Django app. Instead of using that, you can hard-code links to
object-specific admin pages in whatever way you think is best.

Django offers another shortcut in this department. Run the command ``python
manage.py adminindex polls`` to get a chunk of template code for inclusion in
the admin index template. It's a useful starting point.

When you're comfortable with the admin site, read :ref:`part 3 of this tutorial
<intro-tutorial03>` to start working on public poll views.
+0 −3
Original line number Diff line number Diff line
@@ -18,9 +18,6 @@ script found at the top level of each Django project directory.
.sp
.SH "ACTIONS"
.TP
.BI "adminindex [" "appname ..." "]"
Prints the admin\-index template snippet for the given app name(s).
.TP
.BI cleanup
Cleans out old data from the database (only expired sessions at the moment).
.TP
+0 −11
Original line number Diff line number Diff line
@@ -95,17 +95,6 @@ that ``django-admin.py`` should print to the console.
Available subcommands
=====================

adminindex
----------

.. django-admin:: adminindex <appname appname ...>

Prints the admin-index template snippet for the given app name(s).

Use admin-index template snippets if you want to customize the look and feel of
your admin's index page. See :ref:`Tutorial 2 <intro-tutorial02>` for more
information.

cleanup 
-------

+2 −2
Original line number Diff line number Diff line
@@ -44,7 +44,7 @@ _django_completion()
    # Standalone options
    opts="--help --settings --pythonpath --noinput --noreload --format --indent --verbosity --adminmedia --version --locale --domain"
    # Actions
    actions="adminindex createcachetable createsuperuser compilemessages \
    actions="createcachetable createsuperuser compilemessages \
             dbshell diffsettings dumpdata flush inspectdb loaddata \
             makemessages reset runfcgi runserver shell sql sqlall sqlclear \
             sqlcustom sqlflush sqlindexes sqlreset sqlsequencereset startapp \
@@ -90,7 +90,7 @@ _django_completion()
        esac
    else
        case ${prev} in
            adminindex|dumpdata|reset| \
            dumpdata|reset| \
            sql|sqlall|sqlclear|sqlcustom|sqlindexes| \
            sqlreset|sqlsequencereset|test)
                # App completion