【问题标题】:retrieve record from database using django使用 django 从数据库中检索记录
【发布时间】:2015-09-03 13:02:01
【问题描述】:

我的任务是从数据库中检索数据并将其显示在 HTML 表格中。我正在使用数据库中的几列在页面中显示,但它没有给出结果。请告诉我我应该怎么做。它给了我一张空白表。

<!DOCTYPE html>
    <html lang="en">
        <head>
              <link rel="stylesheet" type="text/css" href="{{STATIC_URL}}/static/css/style.css"/>
            <meta charset="utf-8">
            <title> MY Site

            </title>
            </head>

        <body>
            <div class="container">
            <div class="header">
                  <img src="/static/images/django-logo.png" width="300px;" height="75px" >


            </div>
            </div>

             <div class="content">

              <table border="1" style= "background-color:white; width:60%"  cellspacing="0" cellpadding="" >

              <tr>
              <th>Name</th>
              <th>tb_Name </th>
              <th>Product_name </th>
              <th>Domain_name </th>
              </tr>

              {% for key in Testbeds %}
                  <tr>
                  <td>{{ key.name }}</td>
                  <td>{{ key.tb_name }}</td>
                  <td>{{ key.product_name }}</td>
                  <td>{{ key.domain_name }}</td>
                  </tr>
              {% endfor %}

              </table>
            </div>

            <div class="footer">
              <p> copy right django.com </p>
            </div>

            </div>
   </body>
   </html>

view.py

from django.shortcuts import render, HttpResponse,get_object_or_404
from datetime import datetime
from blog.models import Testbeds

  def base(request):

    obj =  Testbeds.objects.all()
    return render (request, 'base.html', {'obj': obj})

url.py

from django.conf.urls import patterns, include, url
from django.contrib import admin
from blog import views

admin.autodiscover()

urlpatterns = patterns('',
    url(r'^base/$', 'blog.views.base', name="base"),
    #url(r'^(?P<slug>[\w\-]+)/$', 'blog.views.post'),
    url(r'^admin/', include(admin.site.urls)),
    )

【问题讨论】:

    标签: python django


    【解决方案1】:
    return render (request, 'base.html', {'obj': obj})
    

    通过这一行,您将一个名为 obj 的变量发送到您的模板,而不是一个名为 Testbeds 的变量。将模板中的Testbeds 更改为obj

    {% for o in obj %}
          <tr> 
              <td>{{ o.name }}</td>
              <td>{{ o.tb_name }}</td>
              <td>{{ o.product_name }}</td>
              <td>{{ o.domain_name }}</td>
          </tr>
    {% endfor %}
    

    【讨论】:

    • 这就是问题所在,但我建议更改视图以便您可以在模板中循环遍历{% for testbed in testbed %}
    • OperationalError at /base/ (1054, "Unknown column 'blog_testbeds.gateway_name' in 'field list'")
    • 你的模型中有一个名为 gateway_name 的列吗?
    • @sufyanshahid 这不是你的观点。先看这里:stackoverflow.com/questions/3787237/…
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-12-31
    • 1970-01-01
    • 2019-05-04
    • 2011-08-20
    • 2013-03-05
    • 2011-11-29
    • 1970-01-01
    相关资源
    最近更新 更多