我試圖創建一個使用方法裝飾器的動態屬性,我遇到的問題是,我想要使用此字段,如果用戶沒有保存他/她只有自己。例如:Django的返回屬性,如果不爲空else返回方法的結果
class Person(models.Model):
name = models.CharField(max_length=100, null=True, blank=True)
def __str__(self):
return self.name
@property
def name(self):
return self.name if self.name else "John"
基本上,如果我在名稱字段中找不到任何內容,我想返回「John」。但是,這樣做,Django抱怨,因爲self.name
正在調查名稱功能,而不是實際的屬性。
maximum recursion depth exceeded while calling a Python object
有沒有辦法來指代不動產或者一些其他的方式來做到這一點?
這將是一個偉大的想法......我需要訪問自我,並確定什麼是「約翰」是怎麼回事基於對象等領域是這樣。沒有提到這一點。反正+1;它會運作良好。 – mimoralea