• django 不能直接把列表给模板 TypeError: context must be a dict rather than tuple.


     将list 传递到前台模板:
     
     举例:
    
    views.py
    
    return render(request,'index.html',list)
    
    def viewtbs(req):
       conn= MySQLdb.connect(
            host='127.0.0.1',
            port = 3306,
            user='root',
            passwd='1234567',
            db ='DEVOPS',
            charset="UTF8"
            )
       cursor = conn.cursor()
       a = cursor.execute("select sn,ip,info,env,script from publish_info;" )
       info = cursor.fetchall()
       print info
       print type(info)
       return render(req,'viewtbs.html',info)
       
    TypeError at /polls/test002/
    
    context must be a dict rather than tuple.
    
    <type 'tuple'>
    Internal Server Error: /polls/test002/
    Traceback (most recent call last):
      File "/usr/local/python27/lib/python2.7/site-packages/django/core/handlers/exception.py", line 41, in inner
        response = get_response(request)
      File "/usr/local/python27/lib/python2.7/site-packages/django/core/handlers/base.py", line 187, in _get_response
        response = self.process_exception_by_middleware(e, request)
      File "/usr/local/python27/lib/python2.7/site-packages/django/core/handlers/base.py", line 185, in _get_response
        response = wrapped_callback(request, *callback_args, **callback_kwargs)
      File "/exam/mysite/polls/views.py", line 115, in viewtbs
        return render(req,'viewtbs.html',info)
      File "/usr/local/python27/lib/python2.7/site-packages/django/shortcuts.py", line 30, in render
        content = loader.render_to_string(template_name, context, request, using=using)
      File "/usr/local/python27/lib/python2.7/site-packages/django/template/loader.py", line 68, in render_to_string
        return template.render(context, request)
      File "/usr/local/python27/lib/python2.7/site-packages/django/template/backends/django.py", line 64, in render
        context = make_context(context, request, autoescape=self.backend.engine.autoescape)
      File "/usr/local/python27/lib/python2.7/site-packages/django/template/context.py", line 287, in make_context
        raise TypeError('context must be a dict rather than %s.' % context.__class__.__name__)
    TypeError: context must be a dict rather than tuple.
    [20/Aug/2018 15:36:01] "GET /polls/test002/ HTTP/1.1" 500 94473
  • 相关阅读:
    win10安装nodejs,修改全局依赖位置和环境变量配置
    JavaScript判断两个对象内容是否相等
    JS判断是否是数组
    Js判断值是否是NaN
    typeof方法重写(区分数组对象)
    JS实现图片懒加载
    输入url到展示页面过程发生了什么?
    html如何在服务端跑起来
    nuxt怎么打包
    如果scss引用了字体图标文件该怎么打包
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13349083.html
Copyright © 2020-2023  润新知