﻿id	summary	reporter	owner	description	type	status	component	version	severity	resolution	keywords	cc	stage	has_patch	needs_docs	needs_tests	needs_better_patch	easy	ui_ux
469	Admin changelist assumes ForeignKey related object has ordering set	oliver.andrich@…	Adrian Holovaty	"Here follows a small part of the model I use in conjunction with a mysql database. I haven't switched anything, so my tables are created as MyISAM tables. (Sadly, I also need them to be MyISAMs.) As the foreign key ""emulation"" of Django works fine for my application so far, I just think I can stick to it even if that sounds like horror to real database guys. :)

But my problem is, when I hit the order ""button"" in the admin interface list view of the agencies table, I get the following Python stack trace. Do be more precise, this only happens when I try toorder the list using a field, that I referenced by a ForeignKey. Is this a bug or what I am doing wrong?

{{{
There's been an error:

Traceback (most recent call last):

  File ""/usr/lib/python2.4/site-packages/django/core/handlers/base.py"", line 64, in get_response
    response = callback(request, **param_dict)

  File ""/usr/lib/python2.4/site-packages/django/views/admin/main.py"", line 134, in change_list
    lookup_order_field = '%s.%s' % (f.rel.to.db_table, f.rel.to.ordering[0])

IndexError: list index out of range
}}}

==== MODEL Excerpt ====

{{{
class Agencytype(meta.Model):
    name = meta.CharField(maxlength=32)
    creation_date = meta.DateTimeField(auto_now_add=True)
    last_modified = meta.DateTimeField(auto_now=True)

    def __repr__(self):
        return self.name

    class META:
        admin = meta.Admin(
                    list_display = (
                        ""name"", 
                        ""creation_date"", 
                        ""last_modified""
                        )
                    )
 
class Agency(meta.Model):
    name = meta.CharField(maxlength=32)
    type = meta.ForeignKey(Agencytype) 
    creation_date = meta.DateTimeField(auto_now_add=True)
    last_modified = meta.DateTimeField(auto_now=True)

    def __repr__(self):
        return self.name

    class META:
        unique_together = ((""name"", ""type""),)
        admin = meta.Admin(
                    list_display = (
                        ""name"", 
                        ""type"", 
                        ""creation_date"", 
                        ""last_modified""
                        )
                    )
}}}"	defect	closed	contrib.admin		normal	fixed			Unreviewed	0	0	0	0	0	0
