gpt4 book ai didi

Python/Django - 表单选择值是对象 ID ...无法获取对象

转载 作者:太空宇宙 更新时间:2023-11-04 06:38:23 25 4
gpt4 key购买 nike

我有一个表单选择框,其中包含与对象对应的值。用户选择一个输入并提交表单。然后我想获取该值并检索 ID 等于所选表单值的对象。但是,当我尝试这样做时,出现如下错误:

int() 参数必须是字符串或数字,不能是 'Cars'

例子:

if form.is_valid():
car = Car.objects.get(id=form.cleaned_data['id'])

我猜问题是返回值是一个字符串而不是一个整数。在 PHP 中,这很简单。如何类型转换或使用返回的表单值来获取关联对象?

似乎 Django 没有返回表单元素的值,而是用户可见的选项名称...

表单类:

class CarForm(forms.ModelForm):
class Meta:
model = Car

HTML 表单:

<form action="">
<select name="id">
{% for car in cars %}
<option value="{{car.id}}">{{car.title}}</option>
{% endfor %}
</select>
</form>

最佳答案

id 字段必须是整数,或者是可以转换为整数的字符串。就这么简单!

不知何故,您的 form.cleaned_data['id'] 正在返回一个名为 Cars 的模型

如果您想将它传递给 get(id=

,请确保它返回一个数字

关于Python/Django - 表单选择值是对象 ID ...无法获取对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5185127/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com