我目前正在开发一个 Django 项目,为此我需要添加一种通过管理面板将图像输入到每个自定义页面的方法。但是,当我尝试添加此功能并填写管理页面上的表单时,我会看到以下内容:
这就是我的 models.py 的样子:
from django.db import models
from django.urls import reverse
# Create your models here.
class Bird(models.Model):
image = models.ImageField(help_text='Upload Image')
breed = models.CharField(max_length=200, help_text='Enter Breed')
breed_sub_category = models.CharField(max_length=200, help_text='Enter Breed Subtype')
description = models.CharField(max_length=5000, help_text='Enter Description')
price = models.FloatField(help_text='Enter Price Here')
age_in_years = models.IntegerField(max_length=200, help_text='Enter Age in Years')
age_in_months = models.IntegerField(max_length=200, help_text='Enter Age in Months')
tame = models.BooleanField(help_text='Is the bird tame?')
def get_absolute_url(self):
return reverse('model-detail-view', args=[str(self.id)])
def __str__(self):
return self.image
return self.breed
return self.price
return self.age_in_years
return self.age_in_months
return self.breed_sub_category
return self.tame
return self.description
这就是我的 admin.py 的样子:
from django.contrib import admin
from .models import Bird
# Register your models here.
admin.site.register(Bird)
老兄,你有多个 return 语句。只需使用一个即可。你也用不了
return self.image
因为它不是字符串而是图像对象。