我在使用 Django 中的内置网络服务器时遇到了一个奇怪的错误(由于我正在积极开发中,因此尚未针对 Apache 进行测试)。我有一个适用于短 url 参数的 url 模式(例如 Chalk%20Hill),但在这个上锁定了 python
http://localhost:8000/chargeback/checkDuplicateProject/Bexar%20Street%20Phase%20IV%20Brigham%20Ln%20to%20Myrtle%20St
获取请求只是说挂起,永远不会返回,我必须强制退出 python 才能让服务器再次运行。我究竟做错了什么?
编辑:在继续测试中,很奇怪,如果我只是输入 url,它会返回正确的 json 响应。然后它锁定python。但是,当我在网站上时,它永远不会返回,并且会锁定 python。
网址:
url(r'^chargeback/checkDuplicateProject/(?P<aProjectName>(\w+)((\s)?(-)?(\w+)?)*)/$', 'chargeback.views.isProjectDuplicate'),
意见:
def isProjectDuplicate(request, aProjectName):
#count the number of matching project names
p = Project.objects.filter(projectName__exact = aProjectName).count()
#if > 0, the project is a duplicate
if p > 0:
return HttpResponse('{"results":["Duplicate"]}', mimetype='application/json')
else:
return HttpResponse('{"results":["Not Duplicate"]}', mimetype='application/json')
模型:
class Project(models.Model):
projectName = models.TextField('project name')
department = models.ForeignKey('Department')
def __unicode__(self):
return self.projectName