我正在尝试根据它们的实际值比较两个变量,但它不起作用,我认为这是因为它们来自不同的类。
下面是一个例子:
models = Model_info.objects.all()
m = 'X-POWER 3'
for model in models:
if m == model:
check = 'accepted'
print(check)
break
else:
check = 'rejected'
print(check)
print(f'final resulte is {check}')
因此,知道变量m
的值确实存在于查询集中models
并且:
type(m) = < class 'str' >
type(model) = < class 'application.models.Model_info' >
有没有办法比较两个变量的值,无论它们属于哪个类。
不能与查询集进行比较,需要使用所选的字段名称执行此操作。
下面是一个示例: 假设ModelInfo
有一个像name
这样的领域,你所要做的就是 将字符串m
与模型实例的字段进行比较(假设字段name
也是字符串(,即:
m = 'X-POWER 3'
for model in models:
if m == model.name:
check = 'accepted'
... # continuation of your code