python - 尝试获取数据Python Django时输入错误
问题描述
我正在尝试根据带有 id 的请求从数据库中获取数据u_id
,x_id
但我没有得到任何数据,而是出现错误TypeError: display_data() missing 2 required positional arguments: 'u_id' and 'x_id'
,你能帮忙吗?
code
def display_data(request, u_id, x_id):
if request.method == 'POST':
widget['data'] = Widget.objects.get(u_id = u_id, x_id = x_id)
return widget
urls.py
url(r'^display_data/$', views.display_data, name="display_data"),
解决方案
您需要从 POST 数据中获取它们。
def display_data(request):
if request.method == 'POST':
u_id = request.POST.get('u_id')
x_id = request.POST.get('x_id')
widget['data'] = Widget.objects.get(u_id=u_id, x_id=x_id)
return widget
此外,您可能希望使用表单进行验证。
如果您想获取u_id
并x_id
作为您正在尝试的参数,您需要将它们添加到 url。
url(r'^display_data/<int:u_id>/<int:x_id>', views.display_data, name="display_data"),
编辑:如果您获得多个对象,请使用filter
而不是get
widget['data'] = Widget.objects.filter(u_id=u_id, x_id=x_id)
推荐阅读
- c# - 组件发射器c#上的多个变量
- .net - 在 .NET Standard 类库中嵌入 UI 组件是一种好习惯吗?
- vue.js - 在存储之外改变 vuex 状态对象
- c# - 防护等级问题,必须公开
- mongodb - 拉出对象数组并从数组中使用它们的字段(MongoDB 聚合框架)
- python - 在不使用 sys.exit() 的情况下在 Mac 上退出 Tkinter GUI 的可靠方法
- angular - 如何减少 mat-grid-list 的每个 mat-grid-tile 之间的空间?
- swift - 向 TableView 中的分段控件添加常量
- javascript - 如何从 reactjs 中的道具动态加载图像?
- javascript - React 中为卡片组件评分