私のDjango管理パネルはself.name
の代わりにobject
を表示しています。オブジェクトを表示するDjango管理者 - __unicode__と連携していませんOR __str__
私はここでいくつかの同様の質問を行ったが、この問題を解決できないようだ。 __unicode__
と__str__
は、書籍と著者の両方で同じ結果になります。私はこれらの行を変更し、すべての変更に新しい著者/書籍を追加しましたが、変更はありません。
MODELS.PY
from django.db import models
from django.contrib.auth.models import User
# Create your models here.
class Author(models.Model):
name = models.CharField(max_length=100)
def __str__(self):
return self.name
class Book(models.Model):
auto_increment_id = models.AutoField(primary_key=True)
name = models.CharField('Book name', max_length=100)
author = models.ForeignKey(Author, blank=False, null=False)
contents = models.TextField('Contents', blank=False, null=False)
def __unicode__(self):
return self.name
Iは互換的ユニコード & STR、同じ結果の両方を使用します。
ここには、メニュー/アクションによる管理パネルのスクリーンショットがあります。
第一画面
著者一覧
シングル著者
Pythonはインデントでクラス/関数の本体を定義しますが、コードの読みやすさだけではありません。 –