Python django.db.utils.ProgrammingError:(1064,“您的SQL语法有错误”;
我一直在尝试使用Django的内置测试模块,但运气不好 我尝试过更改数据库、在本地运行数据库等,但不断遇到相同的错误: django.db.utils.ProgrammingError:(1064,“您的SQL语法有错误;请查看与您的MySQL服务器版本对应的手册,以了解第1行“error”附近使用的正确语法”) 下面是test.py模块Python django.db.utils.ProgrammingError:(1064,“您的SQL语法有错误”;,python,django,python-3.x,django-rest-framework,Python,Django,Python 3.x,Django Rest Framework,我一直在尝试使用Django的内置测试模块,但运气不好 我尝试过更改数据库、在本地运行数据库等,但不断遇到相同的错误: django.db.utils.ProgrammingError:(1064,“您的SQL语法有错误;请查看与您的MySQL服务器版本对应的手册,以了解第1行“error”附近使用的正确语法”) 下面是test.py模块 from rest_framework.test import APITestCase from universal.models import * from
from rest_framework.test import APITestCase
from universal.models import *
from django.urls import reverse
# Create your tests here.
class UPCImageSearchTestCase(APITestCase):
def setup(self):
self.url = reverse('UPCImageSearch')
testUpc = Item.object.create(item_upc = '001100110011')
print(self.url)
def test_fetch_success(self):
self.data = {
'upc':''
}
response = self.client.get(self.url,self.data)
self.assertEqual(200,response_status_code)
def test_fetch_failed(self):
self.data = {
'upc':''
}
response = self.client.get(self.url,self.data)
self.assertEqual(500,response_status_code)
我最终弄明白了主要问题是什么。这是django中的一个迁移失败。修复后,它开始实际工作。如发布的那样,
response=self.client(…)
和self.assertEqual()
行不在函数范围内,因此对self
的引用应该会导致错误。也许您可以添加一些细节并将其标记为已回答,以便对其他人有所帮助。