gpt4 book ai didi

django:使用字符串选择特定模型

转载 作者:行者123 更新时间:2023-12-05 03:15:38 24 4
gpt4 key购买 nike

我想要做的是能够使用模型的名称作为函数的输入,以便可以针对指定的模型执行对象方法。例如:

from app.models import model1, model2

def select_all_from_model(model_name):
all = model_name.objects.all()
return all

all = select_all_from_model('model1')

all = model_name.objects.all() 是一句废话。我需要一个模型对象,而不是字符串名称,objects.all() 选择才能工作。如何根据 model_name 的字符串值加载模型对象?

最佳答案

您可以使用 models.get_model() 函数:

>>> model_class = models.get_model('App', 'Model1')
>>> model_class.objects.all()
>>> [...]

那就是如果你需要使用一个字符串。但是你可以在 python 中传递类。这是一个例子:

>>> from app.models import Model1
>>> select_all_from_model(Model1)
>>> [...]

关于django:使用字符串选择特定模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14651438/

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