Laravel 5

Vuejs et méthods sur checkbox

  • Avatar de MaitrePylos
    Membre depuis :
    27/05/2013
    Messages :
    213

    Bonjour, dans un blade , j'initialise une vuejs et je boucle sur un éléments.

    <tr v-for="u in users">
    <td v-text="u.name"></td>
    <td v-text="u.email"></td>
    <td v-text="u.role"></td>
    <td><i class="fa fa-edit"></i></td>
    <td>
    <input checked data-toggle="toggle" data-style="ios"
    type="checkbox" @click="updateActif(u.id)">
    </td>
    </tr>

    dans cette boucle , je voudrais pouvoir modifier un checkbox en db et du coup, je fais appel à une méthode (updateActif), mais cela ne fonctionne pas.

    j'ai ceci dans mon code vue :

    methods: {
    updateActif( id ) {
    axios.get(updateActifUser/${id}).then(res => {
    console.log(res);
    });
    },
    },

    J'imagine que j'utiise une mauvaise méthode @click et que ej devrais utiliser autre chose, mais je vois pas.

    Merci de voter aide.

  • Avatar de bestmomo
    Membre depuis :
    07/04/2013
    Messages :
    2178

    Salut,

    Quand tu dis que ça fonctionne pas tu peux être plus précis ?

    Est-ce que ça envoie le bon id à la méthode ?

    Comme c'est un checkbox tu fais pas de différence selon que c'est coché ou pas ?

  • Avatar de MaitrePylos
    Membre depuis :
    27/05/2013
    Messages :
    213

    En fait je récupère rien du tout, même pas dans la console.....décidement Vue ne veux pas de moi :)

  • Avatar de bestmomo
    Membre depuis :
    07/04/2013
    Messages :
    2178

    Mais est-ce que la méthode updateActif est appelée ?

  • Avatar de MaitrePylos
    Membre depuis :
    27/05/2013
    Messages :
    213

    Nope, mais comme je dois avancer vite, je l'ai fais en JQuery :

    <script>
    $(document).ready(function() {
    $('.toggle').click(function() {
    let id = $(this).find('input').attr('data-id');
    $.post("{{ action('AdminController@updateActifUser') }}",
    {
    '_token': "{{ csrf_token() }}",
    'id': id,
    });
    });
    });
    </script>
  • Avatar de bestmomo
    Membre depuis :
    07/04/2013
    Messages :
    2178

    Je pense que c'est ta valeur u.id dans le paramètre qui est pas digérée, ça donne quoi en génération ?

  • Avatar de MaitrePylos
    Membre depuis :
    27/05/2013
    Messages :
    213

    Hum visiblement oui, le u.id ne passe pas, mais du coup puisque je suis dans une vuejs, je perd un peu les pédales dans a récupérations des données.....je trouve que c'est pas vraiment friendly.

  • Avatar de bestmomo
    Membre depuis :
    07/04/2013
    Messages :
    2178

    Perso j'utilise toujours l'index. Essai avec une concaténation.

  • Avatar de MaitrePylos
    Membre depuis :
    27/05/2013
    Messages :
    213

    Tu as un exemple avec l'index ?

  • Avatar de bestmomo
    Membre depuis :
    07/04/2013
    Messages :
    2178

    L'exemple dans cet article Une fois que tu as l'index de l'élément de la liste tu retrouves n'importe quel attribut.

  • Avatar de MaitrePylos
    Membre depuis :
    27/05/2013
    Messages :
    213

    Je vais tester pour voir.

Vous ne pouvez pas répondre à ce sujet.