、我々は
def __unicode__(self):
を持っている場合は、Djangoのadminに今デフォルトDjangoの管理:デフォルトのモデル表示問題Djangoのモデルで
でモデルを表示する方法を、私はcustmizedを持つようにしたいと、それが使用されます表示フィールド(このオブジェクトをURLとして表示するので、このオブジェクトに移動することができます)を変更することはできません。unicodeメソッドは他の目的に使用されています。私は何をすべきか?
、我々は
def __unicode__(self):
を持っている場合は、Djangoのadminに今デフォルトDjangoの管理:デフォルトのモデル表示問題Djangoのモデルで
でモデルを表示する方法を、私はcustmizedを持つようにしたいと、それが使用されます表示フィールド(このオブジェクトをURLとして表示するので、このオブジェクトに移動することができます)を変更することはできません。unicodeメソッドは他の目的に使用されています。私は何をすべきか?
ドン」を返すことができ、これはちょうど非常に単純な例であるadminクラス用
class SomeModelAdmin(admin.ModelAdmin):
list_display = ('__unicode__', 'active_status')
def active_status(self, obj):
if obj.profile.is_active:
return """One"""
return """Two"""
active_status.allow_tags = True
active_status.description = ""
をカスタムメソッドを作成することができます便利なURLを設定するなどの目的で__unicode__
を使用してください。
これは、他の目的のためにあなたの印刷されたオブジェクト名を覆い隠します。
どのビューからリンクを作成しようとしていますか?チェンジリストビューから?変更ビューから?外部キーから?
一般的にモデル(ModelAdmin
)の任意のメソッドを定義し、フルHTMLリンク<a href=
を返し、allow_tags = True
に設定し、管理フィールドで参照することができます。
# models method
def admin_url(self):
return '<a href="%s">Edit Model</a>' % the_url
admin_url.allow_tags = True
# ModelAdmin method, through ForeignKey
def admin_url(self, obj):
return '<a href="%s">Edit Model</a>' % obj.foreignkey.url
admin_url.allow_tags = True
あなたはこの機能 にあなたのロジックを置くことができるので、あなたはまた、いくつかのHTMLコード
私はこれらの回答に同意しますが、私のマシンでは動作しません。
私はPython3とDjango1.8を使用していましたが、これを使用しようとしています。
class MyModel(models.Model):
name = models.CharField(max_length=60)
def __str__(self):
return 'MyModel: {}'.format(self.name)