我正在尝试通过实施在线论坛来学习Python和Django。现在,我正在尝试将帖子标题的默认值设置为“Re:”+ thread.title,但我似乎无法做到。
我搜索过这样的事情,但似乎没有回答我的问题。
这是我的代码(models.py):
from django.db import models
class Thread(models.Model):
title = models.CharField(max_length=50)
def __unicode__(self):
return u'[id=%s]%s' % (self.id, self.title)
class Post(models.Model):
thread = models.ForeignKey(Thread)
title = models.CharField(max_length=50)
post_date = models.DateTimeField(auto_now_add=True)
content = models.TextField()
def __init__(self):
super(Post, self).__init__()
if not self.title:
self.title = "Re: %s" % self.thread.title
def __unicode__(self):
return u'%s::[id=%s]%s' % (self.thread, self.id, self.title)
我希望有人可以帮助我。
此致 乍得
答案 0 :(得分:1)
您可能希望在重写的save
方法中设置默认值。您的__init__
代码无效,因为此时尚未设置self.thread
。