Python 通过字符串调用函数、接近属性
需求:传入的是函数名、属性名,想通过字符串调用函数,接近属性。
通过字符串接近、变动属性
变量:model_name, field_name
# 获取 model
model = AppConfig.get_model(model_name)
# 获取 field_name 的值
getattr(model, field_name)
# 变动 field_name 对应的值,比如 + 1
# 使用 Django F
from django.db.models import F
reporter = Reporters.objects.get(name='Tintin')
reporter.stories_filed = F('stories_filed') + 1
reporter.save()
# 那么使用字符串如何实现上面的
# 查找 setattr 方法帮助
# setattr(x, 'foobar', 123) is equivalent to x.foobar = 123.
setattr(model, field_name) =  F(field_name) + 1
连接 django 的 Q
from django.db.models import Q
query = Q()
for entry in a:
    query = query | Q(my_field__contains=entry)
 
                    
                     
                    
                 
                    
                
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号