Js come richiamare una view

di il
4 risposte

Js come richiamare una view

Salve sono nuovo di python.

Scusate la domanda forse banale ma non ho trovato una soluzione.

Ho una form di input in cui ho un campo Comune con una ForeighKey al campo nome della Tabella comuni e funziona.

Quando sono in inserimento o editazione, dopo aver scelto il comune vorrei che mi visualizzasse il campo Prov di fianco.

Il campo Prov lo deve acquisire dalla Tabella Comuni

Per quel che ho capito si può fare solo con js.

Ho scritto un listener e funziona. Riesco a prende l'ID del comune, e riesco ad aggiornare il campo della Prov mettendo un valore a caso.

Però vorrei passare la Prov a cui appartiene il comune

Gazie in anticipo

4 Risposte

  • Re: Js come richiamare una view

    28/01/2024 - CiSono ha scritto:


    Salve sono nuovo di python.

    Scusate la domanda forse banale ma non ho trovato una soluzione.

    Ho una form di input in cui ho un campo Comune con una ForeighKey al campo nome della Tabella comuni e funziona.

    Quando sono in inserimento o editazione, dopo aver scelto il comune vorrei che mi visualizzasse il campo Prov di fianco.

    Il campo Prov lo deve acquisire dalla Tabella Comuni

    Per quel che ho capito si può fare solo con js.

    Ho scritto un listener e funziona. Riesco a prende l'ID del comune, e riesco ad aggiornare il campo della Prov mettendo un valore a caso.

    Però vorrei passare la Prov a cui appartiene il comune

    Gazie in anticipo

    Manda il tuo codice, non si capisce tanto.

  • Re: Js come richiamare una view

    Scusami cerco di essere più chiaro e posto il codice

    Ho 2 tabelle collegate A e B.

    Un campo di B é collegato ad un campo di A tramite una ForeignKey

    Nel form dopo la scelta della select devo visualizzare il valore di un altro campo della Tabella B

    Models

    class Utente(models.Model):
        RagSociale = models.CharField(max_length=40, blank=False, null=False)
        Indirizzo = models.CharField(max_length=30, default='')
        ComuneID = models.ForeignKey(Comuni, on_delete=models.PROTECT, null=True)
        Cap = models.IntegerField(validators=[MaxValueValidator(99999), MinValueValidator(0)], blank=True, null=True)
    
        class Meta:
            # db_table = 'Utente'
            ordering = ['RagSociale']
            verbose_name = 'Utente'
            verbose_name_plural = 'Gestione Utente'
            default_permissions = ('add', 'change', 'delete', 'view')
    
        @property
        def prov(self):
            return self.ComuneID.Prov if self.ComuneID else None
    
        def __str__(self):
            return self.RagSociale
    
    
    class Comuni(models.Model):
        # ... Nel campo Codice ho tolto default=0 altrimenti mi visualizza lo 0 e preferisco sia vuoto
        CodCatastale = models.CharField(max_length=4, unique=True, default='', blank=False, null=False)
        Comune = models.CharField(max_length=30, unique=True, default='', blank=False, null=False)
        Cap = models.IntegerField(validators=[MaxValueValidator(99999), MinValueValidator(0)], blank=True, null=True)
        Prov = models.CharField(max_length=2, default='', blank=True, null=True)
        RegioneID = models.ForeignKey(Regioni, on_delete=models.PROTECT)
    
        class Meta:
            # db_table = 'Comuni'
            ordering = ['Comune']
            verbose_name = 'Comuni'
            verbose_name_plural = 'Gestione Comuni'
            unique_together = ['CodCatastale', 'Comune']
            # permissions = ['Modificare_tutto']   # controlla cosa puoi inserire
            default_permissions = ('add', 'change', 'delete', 'view')
    
        def __str__(self):
            return f"{self.Comune} ({self.Prov})"

    Dalla della Tabella Utente scelgo il comune.
    Dopo la scelta del comune, sulla form devo visualizzare il valore Prov  e devo riempire il campo CAP di Utente con il valore del campo CAP di Comuni

    Di seguito il codice js per prendere l'ID del Comune scelto nella form

    document.addEventListener("DOMContentLoaded", function () {
        const comuneInput = document.querySelector("#id_ComuneID");
        console.log(comuneInput);  // Verifica che comuneInput sia correttamente selezionato
    
        comuneInput.addEventListener("blur", function () {
            const capInput = document.querySelector("#id_Cap");
            /*const selectedComuneCap = getCapValueForComune(this.value);*/
            capInput.value = 111;
        });
    });
  • Re: Js come richiamare una view

    28/01/2024 - CiSono ha scritto:


    Ho scritto un listener e funziona. Riesco a prende l'ID del comune, e riesco ad aggiornare il campo della Prov mettendo un valore a caso.

    come fai a mettere un valore a caso?

    metti il valore del campo provincia della tabella comuni…

  • Re: Js come richiamare una view

    Ti ringrazio,  ma dopo tanto provare ci sono riuscito

Devi accedere o registrarti per scrivere nel forum
4 risposte