Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/294.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
Python 在Django中显示mysql数据库中的数据_Python_Mysql_Django - Fatal编程技术网

Python 在Django中显示mysql数据库中的数据

Python 在Django中显示mysql数据库中的数据,python,mysql,django,Python,Mysql,Django,我尝试使用Django显示Mysql数据库中的数据。用户通过addSubscriber.html页面输入所需数据以保存在数据库中,并被重定向到“report.html”页面,其中显示表中的所有数据(在本例中为订阅服务器) 这是我的文件:views.py from django.shortcuts import render, redirect from django.contrib.auth.decorators import login_required from django.views i

我尝试使用Django显示Mysql数据库中的数据。用户通过addSubscriber.html页面输入所需数据以保存在数据库中,并被重定向到“report.html”页面,其中显示表中的所有数据(在本例中为订阅服务器)

这是我的文件:views.py

from django.shortcuts import render, redirect
from django.contrib.auth.decorators import login_required
from django.views import generic
from .models import Subscribers
from .forms import addSubsForm


@login_required
def dashboard(request):
    user = request.user
    context = {'user': user}
    template = 'dashboard.html'
    return render(request, template, context)



@login_required
def addSubscriber(request):
    template = 'addSubscriber.html'

    if request.method == 'POST':
            form = addSubsForm(request.POST)
            if form.is_valid():
                f = form.save(commit=False)
                f.save(using='db2')
                data = Subscribers.objects.all()
                return redirect('report', {'entries': data})

    else:
            form = addSubsForm()

    return render(request, template, {'form': form})




@login_required
def report(request):
    context = locals()
    template = 'report.html'
    return render(request, template, context)
forms.py

from .models import Subscribers
from django import forms


class addSubsForm(forms.ModelForm):
    class Meta:
        model = Subscribers
        fields = '__all__'
report.html

{%extends 'base.html'%}


{% block content %}

 <h2 class="page-header">Subscribers List</h2>


          <div class="table-responsive">
            <table class="table table-striped">
              <thead>
                <tr>
                  <th>Bill Number</th>
                  <th>Name</th>
                  <th>Area</th>
                  <th>Phone Number</th>
                  <th>Header</th>
                </tr>
              </thead>
              <tbody>
                <tr>{% for entries in Subscribers %}
                  <td>{{ entries.billNumber }}</td>
                  <td>{{ entries.name }}</td>
                  <td>{{ entries.area }}</td>
                  <td>{{ entries.phoneNumber }}</td>
                  <td>{{ entries.name }}</td>
                    {% endfor %}
                </tr>
              </tbody>
            </table>
          </div>
{% endblock %}
{%extends'base.html%}
{%block content%}
订户名单
票据号码
名称
地区
电话号码
标题
{订阅服务器%%中的条目为%0}
{{entries.billNumber}
{{entries.name}
{{entries.area}
{{entries.phoneNumber}
{{entries.name}
{%endfor%}
{%endblock%}
提交表单时出现的错误是:

NoReverseMatch at /dashboard/addSubscriber/
Reverse for 'report' with arguments '({'entries': <QuerySet [(1, u'Manish Ojha', u'Jirikhimti', u'9843003979', u'2000', u'21'), (2, u'Manish Ojha', u'Jirikhimti', u'9843003979', u'2000', u'1'), (3, u'Manish Ojha', u'Jirikhimti', u'9843003979', u'2000', u'2'), (4, u'Manish Ojha', u'Jirikhimti', u'9843003979', u'2000', u'3'), (5, u'Manish Ojha', u'Jirikhimti', u'9843003979', u'2000', u'4'), (6, u'Manish Ojha', u'Jirikhimti', u'9843003979', u'2000', u'5'), (7, u'Manish Ojha', u'Jirikhimti', u'9843003979', u'2000', u'6'), (8, u'Manish Ojha', u'Jiri', u'8989', u'989', u'27308472893478'), (9, u'Manish Ojha', u'Jiri', u'8989', u'989', u'27308472893478'), (10, u'Manish Ojha', u'Jiri', u'8989', u'989', u'1'), (11, u'Manish Ojha', u'Jiri', u'8989', u'989', u'1'), (12, u'Manish', u'jklj', u'89890', u'99089', u'8989'), (13, u'Manish', u'jklj', u'89890', u'99089', u'8989'), (14, u'Manish', u'jklj', u'89890', u'99089', u'8989'), (15, u'Manish', u'jklj', u'89890', u'99089', u'8989'), (16, u'Manish', u'jklj', u'89890', u'99089', u'8989'), (17, u'Manish', u'jklj', u'89890', u'99089', u'8989'), (18, u'sdf', u'sdf', u'sdf', u'sdf', u'sdf'), (19, u'sdf', u'sdf', u'sdf', u'sdf', u'sdf'), (20, u'sfdf', u'jh', u'jhj', u'hj', u'hj'), '...(remaining elements truncated)...']>}, 1)' and keyword arguments '{}' not found. 1 pattern(s) tried: ['dashboard/report/$']
NoReverseMatch at/dashboard/addSubscriber/
找不到参数“({'entries':},1)”和关键字参数“{}”的“report”的反向。已尝试1个模式:[“dashboard/report/$”]
即使这些数据是很久以前输入的,并且已经从数据库中删除,它们仍然显示在这里。

更改此行

return redirect('report', {'entries': data}, 1)

以及在报告视图中

@login_required
def report(request):
    data = Subscribers.objects.all()
    template = 'report.html'
    return render(request, template, {'entries' : data})
并在html中更改这一行

{% for entries in Subscribers %}

{%for entries%}
{{entry.billNumber}
对于其他
tds
也一样

{%对于订阅服务器%}
{% for entries in Subscribers %} 
<tr>
    <td>{{ entries.billNumber }}</td>
    <td>{{ entries.name }}</td>
    <td>{{ entries.area }}</td>
    <td>{{ entries.phoneNumber }}</td>
    <td>{{ entries.name }}</td>
</tr>
{% endfor %}
{{entries.billNumber} {{entries.name} {{entries.area} {{entries.phoneNumber} {{entries.name} {%endfor%}

我认为这也是错误的。试试我的代码,看看我的代码是否有效

很抱歉
返回重定向('report',{'entries':data},1)
。最后的1是我的错误。我正在试验代码,页面被重定向到report.html,但在report.html中,数据库中的数据没有显示。天哪,你真是个天才。再次感谢你做同样的事情。这是我的第一个应用程序。但文件编制是一个艰难的过程。上帝啊,做一名程序员很难。然而,试着让我最好的兄弟记住,开始总是最难的,坦白说,兄弟,即使我对django不太了解:)
{% for entry in entries %}
<td>{{ entry .billNumber }}</td>
{% for entries in Subscribers %} 
<tr>
    <td>{{ entries.billNumber }}</td>
    <td>{{ entries.name }}</td>
    <td>{{ entries.area }}</td>
    <td>{{ entries.phoneNumber }}</td>
    <td>{{ entries.name }}</td>
</tr>
{% endfor %}