Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/302.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中用get方法搜索数据库表_Python_Django_Django Models_Django Views - Fatal编程技术网

Python 在django中用get方法搜索数据库表

Python 在django中用get方法搜索数据库表,python,django,django-models,django-views,Python,Django,Django Models,Django Views,我是django新手,很难通过“get”方法从模型数据库表中获取结果 我的型号是: class records(models.Model): sex = (('M', 'MALE'),('F', 'FEMALE'),) reg_number = models.CharField(max_length=15) mic_number = models.CharField(max_length=15) dog_name = models.CharField(max_le

我是django新手,很难通过“get”方法从模型数据库表中获取结果

我的型号是:

class records(models.Model):
    sex = (('M', 'MALE'),('F', 'FEMALE'),)
    reg_number = models.CharField(max_length=15)
    mic_number = models.CharField(max_length=15)
    dog_name = models.CharField(max_length=20)
    dog_breed = models.CharField(max_length=50)
    color = models.CharField(max_length=20)
    dog_Sex = models.CharField(max_length=1,choices=sex)
    Breeder = models.CharField(max_length=30)
    Owner_name = models.CharField(max_length=50)
    address = models.TextField(max_length=264)
from django.shortcuts import render
import datetime
from .forms import RecordForm
from .models import records

# Create your views here.
def index (request):
    return render(request, "newyear/index.html")

def search (request):
    mic = request.GET['mic']
    r = records.objects.filter(mic_number__iexact = mic )
    return render(request,"newyear/search.html", {"records": r})
我的视图是:

class records(models.Model):
    sex = (('M', 'MALE'),('F', 'FEMALE'),)
    reg_number = models.CharField(max_length=15)
    mic_number = models.CharField(max_length=15)
    dog_name = models.CharField(max_length=20)
    dog_breed = models.CharField(max_length=50)
    color = models.CharField(max_length=20)
    dog_Sex = models.CharField(max_length=1,choices=sex)
    Breeder = models.CharField(max_length=30)
    Owner_name = models.CharField(max_length=50)
    address = models.TextField(max_length=264)
from django.shortcuts import render
import datetime
from .forms import RecordForm
from .models import records

# Create your views here.
def index (request):
    return render(request, "newyear/index.html")

def search (request):
    mic = request.GET['mic']
    r = records.objects.filter(mic_number__iexact = mic )
    return render(request,"newyear/search.html", {"records": r})
我的索引模板是:

<form action="{% url 'search'%}" enctype="application/x-www-form-urlencoded" method="GET">
    <ul><input type="text" name = "mic"></ul>
  <button type="submit" name= "search">search</button>
</form>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
  <h1>THIS IS RESULT PAGE</h1>
  {% if records %}
  <table>
    {% for records in records %}
    <tr>
      <td>{{records.color}}</td>
      <td>{{records.dog_name}}</td>
      <td>{{records.mic_number}}</td>
    </tr>
  {% endfor %}
  </table>
  {% endif %}
</body>
</html>

    搜索
    我的搜索模板是:

    <form action="{% url 'search'%}" enctype="application/x-www-form-urlencoded" method="GET">
        <ul><input type="text" name = "mic"></ul>
      <button type="submit" name= "search">search</button>
    </form>
    
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Document</title>
    </head>
    <body>
      <h1>THIS IS RESULT PAGE</h1>
      {% if records %}
      <table>
        {% for records in records %}
        <tr>
          <td>{{records.color}}</td>
          <td>{{records.dog_name}}</td>
          <td>{{records.mic_number}}</td>
        </tr>
      {% endfor %}
      </table>
      {% endif %}
    </body>
    </html>
    
    
    文件
    这是结果页面
    {%if记录%}
    {记录%中的记录为%s}
    {{records.color}
    {{records.dog_name}
    {{records.mic_number}
    {%endfor%}
    {%endif%}
    
    search.html
    仅显示“这是结果页”。以上方法有什么错误,请帮助。我已经挣扎了3天。

    循环变量(
    记录
    )与循环详细信息(
    记录
    )相同。因此,请将
    记录
    更改为
    记录
    ,如下所示。并将
    GET
    方法更改为
    POST

    <h1>THIS IS RESULT PAGE</h1>
      {% if records %}
      <table>
        {% for record in records %}
        <tr>
          <td>{{record.color}}</td>
          <td>{{record.dog_name}}</td>
          <td>{{record.mic_number}}</td>
        </tr>
      {% endfor %}
      </table>
      {% endif %}
    
    index.html

    <form action="{% url 'search'%}" enctype="application/x-www-form-urlencoded" method="POST">
        <ul><input type="text" name = "mic"></ul>
      <input type="submit" value="search" name= "search">
    </form>
    
    
    

      Search.html仅显示“这是结果页”。以上方法有什么错误,请帮助。3天来我一直在努力。我试过了,但仍然没有显示任何记录。页面保持空白。检查
      记录
      这是空的??通过将
      {{records}}
      添加到template.no,当我删除所有内容并发送查询记录.objects.all()时,记录不是空的。如果我手动输入mic_编号并删除mic,它也会显示结果。问题是它没有从表单中获取参数。
      mic\u number
      数据库值中必须手动输入(
      index
      url),然后显示详细信息。我认为这个错误是你的错误。我用正确的答案在本地运行它。是的,它起作用了,非常感谢。我松了一口气。