django - Django - html 提交以查看对 html 页面的 api 调用
问题描述
所以我和他们一样绿色,正在尝试以下。我们的工作管理应用程序的 API 很一般,但客户门户很差。我正在尝试至少制作一个我想要的原型并且一直在使用 Django(第一次)我想我快到了,但我自己都纠结了。作为一个新手,文档并没有给我太多启发。
用户从其中一个网页输入工作编号并单击提交。我需要那个工作编号来完成我的 API 调用然后我想在 job.html 中显示工作信息几天后(比如 5 天)
我将作业编号传递给视图并在终端中查看 JSON 数据,但无法将其显示在 job.html 中
我收到此错误
AttributeError at /job/ 'dict' object has no attribute 'headers' Request Method: POST Request URL: http://127.0.0.1:8000/job/ Django Version: 3.2.dev20210111104520 Exception Type: AttributeError Exception Value: **'dict' object has no attribute 'headers'** Exception Location: c:\users\davidp\django\django\middleware\clickjacking.py, line 33, in process_response Python Executable: C:\Program Files\Python38\python.exe **Python Version: 3.8.2**
当我在代码中手动输入工作编号时,我的工作页面正在工作,但那是几天前的事了,我试图让其他一切正常工作,我似乎已经破坏了那部分。
base.html - 用户添加工作编号并点击提交
<form class="form-inline my-2 my-lg-0" method ='POST'action="/job/">{% csrf_token %}
<input type="text" placeholder="Job Number"name="job2find">
<button class="btn btn-outline-success my-2 my-sm-0" target='job' type="submit">Find Job</button>
</form>
网址.py
from django.urls import include, path
from django.conf.urls import url
from display_faults import views
from display_faults.views import GetFaults, GetJobs, GetInvoices, GetJ
from display_faults.views import get_Job
urlpatterns = [
path('admin/', admin.site.urls),
path('faults/', GetFaults.as_view(template_name='faults.html'), name='tt_tickets'),
path('invoices/', GetInvoices.as_view(template_name='invoices.html'), name='tt_tickets'),
path('todayjb/',views.Showjb,name='Enable_Jobs'),
path('job/',views.get_Job)
#path('job/', GetJ.as_view(template_name='job.html'))
]
视图.py
def get_Job(request,*args, **kwargs):
print(request.method)
if request.method=="POST":
print('*'*50)
jb= request.POST['job2find']
print (jb)
print('*'*50)
jobber=jb
url = ("https://middle of my url/jobs/"+jobber)
r = requests.get(url, headers={'Authorization':'Bearer %s' % 'bearer is here but will be moved'})
jobs = r.json()
job_list = []
print (jobs)
return jobs
工作.html
{% extends 'base.html' %}
{% block content %}
<body>
<p>
Job ID:
<input name="textfield" type="text" id="textfield" value="{{jobs.ID}}">
Name:
<input type="text" name="textfield5" id="textfield5"value="{{jobs.Name}}">
Stage:
<input type="text" name="textfield6" id="textfield6"value="{{jobs.Stage}}">
<p> </p>
Order:
<input type="text" name="textfield2" id="textfield2"value="{{jobs.OrderNo}}">
Status:
<input type="text" name="textfield7" id="textfield7"value="{{jobs.Status.Name}}">
Due Date:
<input type="text" name="textfield3" id="textfield3"value="{{jobs.DueDate}}">
<p> </p>
Site Address:
<input type="text" name="textfield4" id="textfield4"value="{{jobs.Site.Name}}"size="80" >
<p> </p>
</p>
<p> </p>
<p>
<label for="textarea6">Notes:</label>
<textarea name="textarea2"rows="10" cols="150" id="textarea6">{{jobs.Notes}}</textarea>
</p>
<label>Description:</label>
<p> </p>
{{jobs.Description|safe}}
<p> </p>
<p> </p>
{%endblock%}
</body>
</html>
谢谢,如果我破坏了代码,我深表歉意。
解决方案
推荐阅读
- python - 如何将我现有的 python 代码转换为可视 GUI?
- regex - 去正则表达式否定回顾
- flutter - 异步不等待 Future.then() - Dart
- google-sheets - Google Sheets filter() 包裹在 arrayformula() 中,没有 vlookup()
- android - compileOnly 是否适用于 Android 原生模块?
- spring-boot - 为 ForkJoinPool.commonPool() 打开跟踪工具
- r - 在 ggplotly 中可视化输出:从表格到绘图
- c++ - 获取线性回归 C++ 的 -nan(ind) 错误
- powershell - Pester v5.1:应该 - 抛出包含方括号的消息失败
- python - 读取 csv 文件中的最后一行错误:迭代器应返回字符串,而不是字节(您是否以文本模式打开文件?)