Django を使用して組み込みの DjangoモデルUserProfile
を拡張するアプリケーションがあります。User
少し似ています:
class UserProfile(models.Model):
user = models.ForeignKey(User, unique=True)
# Local Stuff
image_url_s = models.CharField(max_length=128, blank=True)
image_url_m = models.CharField(max_length=128, blank=True)
# Admin
class Admin: pass
モデルに新しいクラスを追加しました。
class Team(models.Model):
name = models.CharField(max_length=128)
manager = models.ForeignKey(User, related_name='manager')
members = models.ManyToManyField(User, blank=True)
そして、それは管理者に登録されています:
class TeamAdmin(admin.ModelAdmin):
list_display = ('name', 'manager')
admin.site.register(Team, TeamAdmin)
残念ながら、管理者インターフェースで、ドロップダウン ボックスからマネージャーを選択したり、複数選択フィールドを介してチーム メンバーを設定したりすると、ユーザーの数値 ID によって並べ替えられます。私の人生では、これらを整理する方法がわかりません。
私は同様のクラスを持っています:
class Meta:
ordering = ['name']
それはうまくいきます!User
しかし、私はクラスを「所有」しておらず、このトリックを で試すとUserAdmin
:
class Meta:
ordering = ['username']
私は得る:
django.core.management.base.CommandError: One or more models did not validate:
events.userprofile: "ordering" refers to "username", a field that doesn't exist.
user.username
どちらも機能しません。したい場合のように、指定できますimage_url_s
。. . ユーザーのリストを で並べ替えるように管理者に指示するにはどうすればよいusername
ですか? ありがとう!