Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
TypeError:python中格式字符串的参数不足_Python_Mysql_Sql_Python 2.7_Mysql Python - Fatal编程技术网

TypeError:python中格式字符串的参数不足

TypeError:python中格式字符串的参数不足,python,mysql,sql,python-2.7,mysql-python,Python,Mysql,Sql,Python 2.7,Mysql Python,它显示了一个类似TypeError的错误:格式字符串的参数不够,如何解决这个问题 views.py def GetMobilefollowpopularnewsproviderTest(request,user_id): # from django.http import JsonResponse print "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" if request.method == 'GET': # n

它显示了一个类似TypeError的错误:格式字符串的参数不够,如何解决这个问题

views.py

def GetMobilefollowpopularnewsproviderTest(request,user_id):
# from django.http import JsonResponse
print "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
if request.method == 'GET':
    # news_provider = request.POST.get("news_provider")
    print user_id
    cursor = connection.cursor()
    queryset = cursor.execute("select news_crawl_newsproviders.news_provider as id, 1 as status from news_crawl_newsproviders join  accounts_follownewsprovider on news_crawl_newsproviders.id=accounts_follownewsprovider.provider_id where accounts_follownewsprovider.user_id='%s' union select news_crawl_newsproviders.news_provider, 0 from news_crawl_newsproviders join  accounts_follownewsprovider on news_crawl_newsproviders.id=accounts_follownewsprovider.provider_id where accounts_follownewsprovider.user_id!='%s' and news_crawl_newsproviders.news_provider not in(select news_crawl_newsproviders.news_provider as id from news_crawl_newsproviders join  accounts_follownewsprovider on news_crawl_newsproviders.id=accounts_follownewsprovider.provider_id where accounts_follownewsprovider.user_id='%s');select news_crawl_newsproviders.news_provider as id, 1 as status from news_crawl_newsproviders join  accounts_follownewsprovider on news_crawl_newsproviders.id=accounts_follownewsprovider.provider_id where accounts_follownewsprovider.user_id='%s' union select news_crawl_newsproviders.news_provider, 0 from news_crawl_newsproviders join  accounts_follownewsprovider on news_crawl_newsproviders.id=accounts_follownewsprovider.provider_id where accounts_follownewsprovider.user_id!='%s' and news_crawl_newsproviders.news_provider not in(select news_crawl_newsproviders.news_provider as id from news_crawl_newsproviders join  accounts_follownewsprovider on news_crawl_newsproviders.id=accounts_follownewsprovider.provider_id where accounts_follownewsprovider.user_id='%s');"%(user_id))
    dict = {}
    dict = dictfetchall(cursor)
    print(dict)
    context = {
        'posts': dict
    }
    return JsonResponse(context, safe=False)
return HttpResponse(status=201)
url.py

url(r'followpopularnewsprovider/(?P<user_id>\d+)/$', 
 csrf_exempt(views.GetMobilefollowpopularnewsproviderTest), name='popularprovider')
url(r'followPopularNewProvider/(?P\d+)/$),
csrf_豁免(views.GetMobilefollowpopularnewsproviderTest),name='popularprovider')

在您的查询集中您有多个
%s
,尽管您通过了
%(用户id)

您应该以定义的格式字符串传递所有参数

cursor.execute(“…”%(param1,param2,param3,param4,…)

在您的查询集中,您有两个
%s
虽然您通过了
%(用户id)
一次,但如何通过多个用户id查看下面的答案