我正在嘗試創建一個類似于 github 的問題跟蹤器。我一直在嘗試實作分配功能,這就是我到目前為止所擁有的
class Assign(models.Model):
name = models.OneToOneField(User, on_delete=models.SET_NULL, null=True)
class Issue(models.Model):
MARK_AS = ((True, 'Open'), (False, 'Closed'))
title = models.CharField(max_length=100)
content = models.TextField()
date_posted = models.DateTimeField(default=timezone.now)
author = models.ForeignKey(User, on_delete=models.CASCADE)
assignee = models.ForeignKey(Assign, on_delete=models.SET_NULL, null=True)
mark_as = models.BooleanField(choices=MARK_AS, default=True)
def __str__(self):
return self.title
def get_absolute_url(self):
return reverse('issue-detail', kwargs={'pk': self.pk})
管理頁面 我覺得我很接近,但是當我嘗試使用時
class Assign(models.Model):
name = models.OneToOneField(User, on_delete=models.SET_NULL, null=True)
def __str__(self):
return self.name
我得到的錯誤
__str__ returned non-string (type User)
關于如何解決這個問題的任何想法?謝謝你。
uj5u.com熱心網友回復:
錯誤描述
str回傳非字串(用戶型別)表示物件表示方法,即 Assign.__str__()方法應始終回傳一個字串,而不是像您在那里回傳的物件。
解決方案
將您的 Assign Model str () 方法更改為這樣。
def __str__():
return self.name.username
筆記:
你不應該總是self.user.username像我在那里那樣回傳,但實際上你可以回傳你在具有屬性的User模型中的任何欄位。CharField
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/420048.html
標籤:
