Ho delle righe di codice che non so cosa facciano esattamente (trovate in un libro). Potrei anche contestualizzarle ma temo la cosa diventi più complicata. In caso vediamo, chiedete pure.
In pratica trattasi di un field per Django che scrive su database un campo per ogni lingua che uso. Cioè nel modello definisco solo un MultilingualCharField mentre nel database mi ritrovo due/tre o quelli che sono field, uno per ogni lingua. Questo __init__ però non capisco cosa sia, a cosa serva e sopratutto quale delle due versioni di super() dovrei usare (una è commentata #, commented out, non so come si dica in italiano). Apparentemente funzionano entrambe e non vedo differenze ma non so neanche dove guardare per cercarle.
Uso python 3.7 e django 2.2.
Grazie
Python:
class MultilingualCharField(models.CharField):
def __init__(self, verbose_name=None, **kwargs):
self._blank = kwargs.get('blank', False)
self._editable = kwargs.get('editable', True)
# super(MultilingualCharField, self).__init__(verbose_name, **kwargs)
super().__init__(verbose_name, **kwargs)
In pratica trattasi di un field per Django che scrive su database un campo per ogni lingua che uso. Cioè nel modello definisco solo un MultilingualCharField mentre nel database mi ritrovo due/tre o quelli che sono field, uno per ogni lingua. Questo __init__ però non capisco cosa sia, a cosa serva e sopratutto quale delle due versioni di super() dovrei usare (una è commentata #, commented out, non so come si dica in italiano). Apparentemente funzionano entrambe e non vedo differenze ma non so neanche dove guardare per cercarle.
Uso python 3.7 e django 2.2.
Grazie
Ultima modifica: