iT邦幫忙

0

在django admin中顯示的物件名稱沒有更改...

您好:

我在django models.py 中定義Post類別,有一個title欄位名稱.在類別中有定義一個函數如下:

def str(self):
return self.title

可是當我進入127.0.0.1/admin/新增Post物件時,顯示的物件名稱仍然是預設的Post object(1),想請問各位前輩應該如何解決? 謝謝您._

froce iT邦大師 2 級 ‧ 2018-08-14 10:31:45 檢舉
1.models.py 丟出來看看
2.是生產環境(透過uwsgi或gunicorn)還是開發環境(runserver/shell)
1.models.py如下:
# Create your models here.
# trips/models.py


from django.db import models

class Post(models.Model):
title = models.CharField(max_length=100)
content = models.TextField(blank=True)
photo = models.URLField(blank=True)
location = models.CharField(max_length=100,blank=True)
created_at = models.DateTimeField(auto_now_add=True)
def _str_(self):
return self.title



class Post2(models.Model):
title = models.CharField(max_length=100)
content = models.TextField(blank=True)
photo = models.URLField(blank=True)
location = models.CharField(max_length=100,blank=True)
created_at = models.DateTimeField(auto_now_add=True)

def _str_(self):
return self.title
2.是用runserver

1 個回答

2
froce
iT邦大師 2 級 ‧ 2018-08-14 11:11:10
最佳解答
from django.db import models

class Post(models.Model):
    title = models.CharField(max_length=100)
    content = models.TextField(blank=True)
    photo = models.URLField(blank=True)
    location = models.CharField(max_length=100,blank=True)
    created_at = models.DateTimeField(auto_now_add=True)
    
    def __str__(self):
        return self.title



class Post2(models.Model):
    title = models.CharField(max_length=100)
    content = models.TextField(blank=True)
    photo = models.URLField(blank=True)
    location = models.CharField(max_length=100,blank=True)
    created_at = models.DateTimeField(auto_now_add=True)

    def __str__(self):
        return self.title

python的內建物件方法都是「方法
下底線都是連續2個。

看你的code應該是「str」,應該要寫成「str

謝謝force前輩的分享,謝謝您.

我要發表回答

立即登入回答