长话短说:我制作了tests.py来覆盖我的django代码,我修改了很多代码和模型(18次迁移),一切都很好。
但是在最后一次更改和迁移(添加了一些布尔文件)之后,我的测试在第 8 次迁移时开始崩溃
django.db.utils.OperationalError: no such column: tickets_ticket.ActionRequired
Run Code Online (Sandbox Code Playgroud)
在网站上的 Apache 中,我可以使用新列,用它添加模型,一切看起来都不错,但测试失败
有人可以告诉我,出了什么问题以及如何纠正吗?
长长的故事:
模型.py:
def Ticket_generateUniqueID(related=''):
retval=''
sanitized=''
......
# --- now find unique value
while True:
passNo += 1
retval = generateID()
try:
t = Ticket.objects.get(ticket_number=retval)
pass
except ObjectDoesNotExist:
return retval
....
class Ticket(models.Model):
....
ticket_number = models.CharField(max_length=100,default=Ticket_generateUniqueID,help_text=u"ID of ticket")
ActionRequired = models.BooleanField(default=False,help_text=u"Action Required")
def save(self): # {{{
if not self.id and not self.ticket_number: self.ticket_number=Ticket_generateUniqueID('OTH')
retval=super(Ticket,self).save()
return retval
Run Code Online (Sandbox Code Playgroud)
和我的测试会话(应该从没有 test_* 数据库开始)
$ ./manage.py test -v3
settings ...
Creating …Run Code Online (Sandbox Code Playgroud) 我有Intel Atom N2800(弱,但是方便的Aspire One D270,仍然用于我用它的工作),但更新真的很慢(像天).
我使用MAKEOPTS=" -j5 "in /etc/make.conf和and emerge -DuNqv world它有时会发生Load avg 5.0 5.0 5.0左右,但通常只有1.5左右.
有没有办法让它更多时间更加平缓(并且更快)?