2011-05-05 5 views
1

임의의 수의 이미지를 업로드하여 모델에 첨부해야합니다. 이 사이트는 부동산 중개인을위한 사이트이므로 사이트의 부동산 페이지에 이미지를 첨부하고 싶어합니다. 난 단지 다음과 같은 솔루션을 생각할 수 있습니다 : Django - 복수 이미지 업로드

  1. 는 이미지에 대한 또 다른 모델을 생성하고 (편집 :) 사용하여 연결 외래 키 필드. 이 작업을 원하지 않는 데는 여러 가지 이유가 있습니다. 주로 새 속성을 추가하는 프로세스가 혼란스럽고 (두 개의 다른 관리자 화면을 사용해야 함) 수천 개의 속성이있을 수 있으므로 ManyToMany 드롭 다운 진짜 고통 것입니다.

  2. 이미지 모델을 사용하여 팝업을 시작하는 다소 복잡한 사용자 정의 위젯을 만듭니다. 여기서 문제는 이미지를 저장 한 후에 이미지가 해당 속성에 연결되도록해야한다는 것입니다. 따라서 새 속성을 추가 할 때 링크를 만들 수있는 것이 없기 때문에 이미지를 저장하는 방법을 찾아야합니다. to). 신호로이 작업을 수행 할 수 있음을 알고 있지만 연관시킬 값이 둘 이상일 수 있으므로 여러 이미지로이 작업을 수행하는 방법을 확신 할 수 없습니다.

누구에게 내가이 작업을 수행 할 수있는 제안이 있습니까? 근본적으로 나는 단지 동적 인 숫자의 이미지를 업로드하고 어떻게 든 그들을 내 모델과 연관시키는 방법이 필요하다.

감사합니다.

답변

2

inline model admin 개체가 추가되어 관리자 화면이 전혀 복잡하지 않습니다. 인라인은 새로운 이미지를 각 속성과 연결할 수있는 기능을 제공하는 속성 관리 페이지 아래에 이미지 목록이 있습니다.

이것은 외래 키 시나리오의 고전적인 예입니다. 나는 속성의 사진이 다른 속성과 연결되어서는 안된다는 점에서 다 대다 관계의 사용에 의문을 제기합니다 (아파트 블록의 경우 ...) 당신은 협회 당신이 당신의 데이터베이스를 어떤 방식 으로든 잘 설계하고 싶다면 외래 키 관계를 통해 이루어진다. 그렇지 않으면 많은 파일 이름을 하나의 필드에 넣어야 할 것입니다.이 필드는 매우 지저분하고 거의 확실하지 않습니다.

관리자가 유연성을 충분히 제공하지 못하면 업로드 할 수있는 이미지를 여러 개 연결할 수있는 ModelForm을 구성하기가 어렵지 않습니다.

+0

아, 죄송합니다. ManyToMany의 의미는 내 재산이 여러 다른 이미지에 액세스 할 수있게하려는 것입니다. 당신이 말했듯이, 이미지는 속성마다 한 번만 사용되기 때문에 실제 '첨부 파일'은 외래 키입니다. – Hanpan

+0

인라인 모델 관리자가 내 마음을 날려 버렸습니다. 감사! – Hanpan