Vorrei utilizzare SchemaExtender per aggiungere un'immagine con relativa didascalia all'oggetto Event.<div><br></div><div>L'aggiunta dei campi va a buon fine, ma ho dei problemi nella visualizzazione dell'immagine.</div>
<div><br></div><div>In pratica riesco ad inserire l'immagine, ma se torno in edit l'immagine non viene visualizzata, al suo posto c'è un riquadro delle stesse proporzioni dell'immagine inserita ma non è possibile visualizzarla.</div>
<div>Ho provato anche all'indirizzo /image e /image_thumb ma niente.</div><div><br></div><div>Ho pensato che la classe necessitasse di un traverse ma non ha funzionato... sembra che la ignori.</div><div><br></div><div>
Potete aiutarmi?</div><div><br></div><div><br></div><div>Metto qui sotto un po' di codice relativo al campo Image che ho messo in extender.py:</div><div><br></div><div><br></div><div><br></div><div><br></div><div><br>
</div><div>class ExtensionImageField(ExtensionField, ImageField): pass</div><div><br></div><div><div>image = ExtensionImageField(</div><div><span class="Apple-tab-span" style="white-space:pre">                                                        </span>'image',</div>
<div><span class="Apple-tab-span" style="white-space:pre">                                                        </span>required = False,</div><div><span class="Apple-tab-span" style="white-space:pre">                                                        </span>storage=AnnotationStorage(),</div><div><span class="Apple-tab-span" style="white-space:pre">                                                        </span>widget=ImageWidget(</div>
<div><span class="Apple-tab-span" style="white-space:pre">                                                                </span>label="Immagine",</div><div><span class="Apple-tab-span" style="white-space:pre">                                                                </span>description="Inserisci un'immagine relativa all'evento",</div>
<div><span class="Apple-tab-span" style="white-space:pre">                                                        </span>),</div><div><span class="Apple-tab-span" style="white-space:pre">                                                        </span>validators=('isNonEmptyFile'),</div><div><span class="Apple-tab-span" style="white-space:pre">                                                        </span>languageIndependent = True,</div>
<div><span class="Apple-tab-span" style="white-space:pre">                                                        </span>sizes= {'large' : (768, 768),</div><div><span class="Apple-tab-span" style="white-space:pre">                                                                        </span>'preview' : (400, 400),</div>
<div><span class="Apple-tab-span" style="white-space:pre">                                                                        </span>'mini' : (200, 200),</div><div><span class="Apple-tab-span" style="white-space:pre">                                                                        </span>'thumb' : (128, 128),</div>
<div><span class="Apple-tab-span" style="white-space:pre">                                                                        </span>'tile' : (64, 64),</div><div><span class="Apple-tab-span" style="white-space:pre">                                                                        </span>'icon' : (32, 32),</div>
<div>
<span class="Apple-tab-span" style="white-space:pre">                                                                        </span>'listing' : (16, 16),</div><div><span class="Apple-tab-span" style="white-space:pre">                                                                </span> },</div><div><span class="Apple-tab-span" style="white-space:pre">                                                </span>)</div>
</div><div><br></div><div><div>class ATEventExtender(ContentExtender):</div><div> adapts(IATEvent)</div><div> fields = ContentExtender.fields + [image]</div><div><br></div><div> def __bobo_traverse__(self, REQUEST, name):</div>
<div> """Transparent access to image scales</div><div> """</div><div> if name.startswith('image'):</div><div> field = self.getField('image')</div>
<div> image = None</div><div> if name == 'image':</div><div> image = field.getScale(self)</div><div> else:</div><div> scalename = name[len('image_'):]</div>
<div> if scalename in field.getAvailableSizes(self):</div><div> image = field.getScale(self, scale=scalename)</div><div> if image is not None and not isinstance(image, basestring):</div>
<div> # image might be None or '' for empty images</div><div> return image</div><div><br></div><div> return base.ATCTContent.__bobo_traverse__(self, REQUEST, name)</div></div>
<div>
<br></div><div> </div><div><br></div><div><br></div><div><br></div><div><meta charset="utf-8"><div>Grazie</div><div><br></div><div>Sandro</div></div><div><br></div>