Django認証ユーザーモデルとカスタムユーザープロファイルモデルを使用しています。ユーザープロファイルの管理者は、次のようになります。カスタム管理者リストの表示にDjangoの認証ユーザーフィールドを表示する方法
class UserProfile(models.Model):
user = models.OneToOneField(User)
first_login = models.BooleanField(default = True)
TYPE_CHOICES = (('R', 'Reader'), ('A', 'Author'))
type = models.CharField(max_length = 9, choices = TYP_CHOICES, blank = True)
project = models.ForeignKey('Project', on_delete=models.CASCADE)
私は何をしたいことのリスト表示で、ユーザのis_active
プロパティを表示するには、次のとおりです。
class UserProfileAdmin(admin.ModelAdmin):
list_display = ['user', 'first_login', 'project', 'type']
class Meta:
model = UserProfile
ユーザプロファイルモデルは次のようになりますUserProfileAdmin。これは可能ですか?はいの場合、どうですか?
作品:)しかし、なぜ 'user__is_active'のような検索がうまくいかないのですか? –
私はよく分かりませんが、この場合、管理者は 'queryset'データに基づいてビューを構築しているようです。属性をチェックし、ifが呼び出し可能な場合はそれを呼び出して値を取得します。 adminの 'get_queryset'メソッドで遊ぶことができるかもしれません。しかし間違いなくそれは二重チェックされるべきです。 –
'list_display'が' user__is_active'のような外部キーの属性を扱えるようにするためのチケット[#5863](https://code.djangoproject.com/ticket/5863)がありましたが、 " – Alasdair