Djangoでは、変数を使用してget_object_or_404またはobjects.getを動的に使用するにはどうすればよいですか?
get_object_or_404(${Variable}, pk=id)
また
${Variable}.objects.get(pk=id)
Djangoでは、変数を使用してget_object_or_404またはobjects.getを動的に使用するにはどうすればよいですか?
get_object_or_404(${Variable}, pk=id)
また
${Variable}.objects.get(pk=id)
問題ありません。 と の 2 つのモデルがあると仮定すると、次のようにPost
なりComment
ます。
from app import models as app_models
dynamic_object = getattr(app_models, 'post')
だからあなたはそれを使うことができます:
dynamic_object.objects.get(pk=id)
また
get_object_or_404(dynamic_object, pk=id)
パラメータでDjango ORM モデル クラスを確実に渡す場合、get_object_or_404() は問題なく動作します。
def do_something(id,MyDjangoModelObject = None)
if MyDjangoModelObject:
get_object_or_404(MyDjangoModelObject, pk=id)
また
MyDjangoModelObject.objects.get(pk=id)