python - 错误:“int() 参数必须是字符串、类似字节的对象或数字,而不是 'list'”在装饰器 @action
问题描述
下午好,我正在对 django rest 中的视图集进行@action 装饰器,以通过字段和列表中的一些值过滤我的模型,从而获得将在 api rest 中使用的(属性)值。
我的代码如下:
class EquiposViewSet(viewsets.ModelViewSet):
queryset=Equipo.objects.all()
serializer_class=EquipoSerializer
@action(methods=['get'], detail=False, url_path='equipos-alarm', url_name='equipos_alarm')
def equipos_alarm(self, request): # pylint: disable=invalid-name
queryset=Equipo.objects.filter(id_equipo=[106,107,156,157])
return Response ( {
'id_equipo':equipo.id_equipo,
'nombre_equipo':equipo.nombre,
'hora_ospf':equipo.recorrido_ospf,
'hora_speed':equipo.recorrido_speed,
}
for equipo in queryset
)
返回我的错误如下:
int() 参数必须是字符串、类似字节的对象或数字,而不是“列表”
我怎样才能解决这个问题?
解决方案
尝试将过滤器设置为列表:
queryset=Equipo.objects.filter(id_equipo__in=[106,107,156,157])
顺便说一句,你应该 c/p 你的错误。
推荐阅读
- java - 如何在不等待线程完成的情况下精确渲染帧
- android - 如何从本地网络中的其他设备向我的移动 http 服务器发送请求?
- php - PHPWord DOMDocument::loadXML():开始和结束标记不匹配:实体中的 br 行 1 和 p,行:1
- javascript - SyntaxError: missing ) 在参数列表 php javascript 之后
- node.js - 使用 OpenID Connect 提供者进行身份验证后如何在客户端上创建会话
- django - Django - 基于类的 TemplateView 的动态模型
- c# - 如何克隆 Visual Studio 项目而无需一次又一次地重写所有代码
- c# - foreach 没有很好地阅读 .descendants 并在 if 之前转到 else 语句
- python - 通过将以前的列与熊猫错误相加来创建新列
- debugging - `kubectl debug` 在 1.20 上挂起,启用了功能门