我需要显示国家/地区列表,以便用户从飞船的国家/地区字段中进行选择。但是它显示的是Country对象(1),Country对象(2)...而不是显示国家/地区名称
我为Ship和Country创建了类,其中Ship类具有国家/地区的外键。
class Ship(models.Model):
# Fields
name = models.CharField(max_length=255)
slug = extension_fields.AutoSlugField(populate_from='name', blank=True)
created = models.DateTimeField(auto_now_add=True, editable=False)
callsign = models.CharField(max_length=50)
last_updated = models.DateTimeField(auto_now=True, editable=False)
weight = models.DecimalField(max_digits=20, decimal_places=4)
# RelationShip Fields
shipflag = models.ForeignKey(
'manifest.Country', on_delete=models.SET_NULL,
related_name="Ships", null=True
)
class Meta:
ordering = ('-created',)
def __unicode__(self):
return u'%s' % self.slug
def get_absolute_url(self):
return reverse('manifest_Ship_detail', args=(self.slug,))
def get_update_url(self):
return reverse('manifest_Ship_update', args=(self.slug,))
class Country(models.Model):
# Fields
name = models.CharField(max_length=255)
slug = extension_fields.AutoSlugField(populate_from='name', blank=True)
created = models.DateTimeField(auto_now_add=True, editable=False)
last_updated = models.DateTimeField(auto_now=True, editable=False)
code = models.CharField(max_length=5)
# RelationShip Fields
continent = models.ForeignKey(
'manifest.Continent',
on_delete=models.CASCADE, related_name="Countrys",
)
class Meta:
ordering = ('-created',)
def __unicode__(self):
return u'%s' % self.slug
def get_absolute_url(self):
return reverse('manifest_Country_detail', args=(self.slug,))
def get_update_url(self):
return reverse('manifest_Country_update', args=(self.slug,))
在“国家/地区”下拉列表中的“创建新船”表单中,我希望看到诸如美国,墨西哥,加拿大之类的国家/地区列表,但是却将国家/地区视为此对象(1),国家/地区对象之类的对象(2)...
答案 0 :(得分:2)
将此方法添加到模型中。 ;)
def __str__(self):
return self.name