Domanda

Ho un'applicazione per i profili dei membri che memorizza semplici informazioni sui membri di una squadra. Parte del profilo è un'immagine da utilizzare come avatar. Sto usando Photologue per creare gallerie standard di foto, ma ha un ImageModel che può essere esteso per sfruttare la funzionalità di ridimensionamento e memorizzazione nella cache di Photologue .

Il problema è che l'esempio che danno sulla loro pagina è simile al seguente:

from django.contrib.auth.models import User
from photologue.models import ImageModel

class UserPortrait(ImageModel):
    user = models.OneToOneField(User, primary_key=True)

Potrei sostituire Utente con Membro e tutto andrebbe bene, tranne per il fatto che la modifica del profilo diventa un processo in due fasi; Per prima cosa dovrei creare un profilo Membro, quindi creare un UserPortrait e associarlo al Membro. Vorrei razionalizzarlo in un unico processo, come se stessi usando un ImageField.

Ho sovrascritto i campi immagine a livello di modulo e a livello admin.py, ma mi chiedo se posso gestirli a livello di modello o persino a livello di campo. Mi piacerebbe avere la funzionalità incorporata di un ImageField ma avere comunque il file gestito da un modello separato e correlato. Le linee del modello reale sembrano eccessive poiché è solo un'immagine.

È stato utile?

Soluzione

La tua classe Member dovrebbe estendere ImageModel. Non è necessaria una classe aggiuntiva (ad es. UserPortrait).

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top