나는 수십 개의 모델을 가지고 있는데, 각각 하나의 연관된 ModelForm (Meta.model이 해당 모델을 참조 함)이 있습니다.모델이 주어진 Django ModelForm을 찾는 방법
예.
class FooModel(Model):
pass
class FooModelForm(ModelForm):
class Meta:
model = FooModel
# current approach using a classmethod
FooModelForm.insert_in_model() # does cls.Meta.model.form = cls
FooModelForm을 사용하면 FooModel을 쉽게 찾을 수 있습니다. 내가 원한 것은 REVERSE를 수행하는 가장 좋은 방법을 아는 것입니다 : FooModel 또는 심지어 "Foo"라는 문자열을 표시 할 때 FooModelForm을 찾으십시오.
여러 모델을 반환하는 솔루션이 좋지만 각 모델에 하나의 ModelForm 만 있다고 가정합니다.
현재 위의 그림과 같이 양식 클래스에 모델을 숨기고 있지만, 특히 중앙에서 계산할 수있는 더 나은 방법을 알고 싶습니다 (위의 마지막 줄은 없음).
편집 : Django: Display Generic ModelForm or predefined form과 같은 내용을 검토했지만 이보다 더 간단한 질문이라고 생각합니다. 장고 관리 코드는 내가 추구하는 것을 따라 뭔가를해야합니다. 그러나 get_model equivalent for ModelForms?은 이것이 부두교 일 수 있으며, 명시 적으로 연관을 추적하기 위해 dict['Foo']=FooModelForm
또는 그와 동등한 일을하는 것이 가장 좋을 것이라고 제안합니다. 반복되는 것 같습니다.
프로젝트의 모든 ModelForm을 검색하여 모델을 찾아 값을 반환 할 수 있지만 어떤 목적으로 사용할 수 있습니까? 귀하의 현재 할당은 명시 적입니다 - 암시 적보다 낫습니다. –