我试图让Django的休息frameworki API工作,我发文件api.py与函数调用keyword_organic返回输出是这样的:函数返回不能正常工作
{'u1': 'https://en.wikipedia.org/wiki/Yellow', 'u2': 'https://en.wikipedia.org/wiki/Yellow_color'}
,如果我用这个:
ress = keyword_organic(keyword)
print ress
然后它打印出上面给出的确切输出。所以我的理解'雷斯'变量保持这个字符串正确?
然而,当我尝试使用此功能,并通过输出过于序列化器,它只是不工作..这里是代码:
ress = keyword_organic(keyword)
serializer = SemrushSerializer(data=ress)
if serializer.is_valid():
serializer.save()
但是,如果我只是让新的变量:
var = {'u1': 'https://en.wikipedia.org/wiki/Yellow', 'u2': 'https://en.wikipedia.org/wiki/Yellow_color'}
,并直接通过这一个序列化器它的工作原理(data=var
)
我也是从粘贴keyword_organic
功能的底部,万一东西是有错:
# ....
listof = str(listof)
listof = listof.translate(None, '{}')
table = string.maketrans('[]', '{}')
listof = listof.translate(table)
return listof
你的函数返回json作为字符串吗? –
是的,但我认为它并不重要,因为如果我只是创建新变量并将该字符串放在那里,它会将它传递到序列化程序和数据库。 –
@NemaGa:当然重要;一个字符串不是一个字典。 'var'是一个字典,'ress'是一个字符串。 –