相册不显示信息

时间:2018-04-13 04:29:03

标签: python django cmd

我正在观看关于Django的教程,我一直在跟进,但我注意到我的Django和他之间的细微差别,这可能是因为我有当前的补丁而且他有2016版。问题是我一直在努力专注于项目的音乐应用程序。但每当我创建相册的详细信息,如artist,album_name,genre I,然后将它们保存在shell中。然后检查我重新打开shell并输入Album.objects.all()并获得四个未指定的对象。

<QuerySet [<Album: Album object (1)>, <Album: Album object (2)>, <Album: Album object (3)>, <Album: Album object (4)>]>

我在models.py文件中写了这行无效

from django.db import models

# RED pk 1

class Album(models.Model):
    artist = models.CharField(max_length=100)
    album_title = models.CharField(max_length=250)
    genre = models.CharField(max_length=50)
    album_logo = models.CharField(max_length=1000)

def __str__(self):
    return self.album_title + ' - ' + self.artist

# RED fk 1
class Song(models.Model):
    album = models.ForeignKey(Album, on_delete=models.CASCADE)
    file_type = models.CharField(max_length=10)
    song_title = models.CharField(max_length=250)

1 个答案:

答案 0 :(得分:-1)

您完成了__str__方法错误。此代码可能会解决您的问题。

from django.db import models

class Album(models.Model):
    artist = models.CharField(max_length=100)
    album_title = models.CharField(max_length=250)
    genre = models.CharField(max_length=50)
    album_logo = models.CharField(max_length=1000)

   def __str__(self):
       return self.album_title + ' - ' + self.artist

class Song(models.Model):
    album = models.ForeignKey(Album, on_delete=models.CASCADE)
    file_type = models.CharField(max_length=10)
    song_title = models.CharField(max_length=250)

    def __str__(self):
        return self.song_title