@vikholodov

Как отправить данные?

Не могу понять как мне связать данные, нужно отправить post запрос на сохранение записей в бд, нужно инпуты count и comment как-то связать с product, по id. Наверное нужно создать массив, куда помещать id продукта и данные с инпутов, но как практически и эстетически это реализовать пока я не понимаю или я вообще костыль придумал и есть нормальное решение этой задачи. С Vue несколько дней всего, пока тяжко дается. Обычно я добавляю к name инпута id (типа count-1) и на бэкэ уже расшифровываю. Тут Vue мне не дает это сделать
<form id="orderForm" v-on:submit.prevent="sendForm">
      <p><input v-model="subdivision" type="text" placeholder="Наименование структурного подразделения"></p>
      <p><input v-model="phone" type="tel" placeholder="Номер телефона"></p>
      <p><input v-model="email" type="email" placeholder="Email"></p>
      <br>
      <div class="d-flex">
        <div v-for="product, index in products">
          <h3>{{ product.category.name }}</h3>
            <hr>
          {{ product.type.name }}
          {{ product.description }}
          <input name="count" type="text" placeholder="Количество" value="">
          <input name="comment" type="text" placeholder="Примечание" value="">
        </div>
      </div>
      <button type="submit">Сохранить</button>
    </form>
  • Вопрос задан
  • 42 просмотра
Решения вопроса 1
0xD34F
@0xD34F Куратор тега Vue.js
Наверное нужно создать массив, куда помещать id продукта и данные с инпутов...

Не нужно. Указывайте в v-model соответствующие свойства объекта product:

<input v-model="product.count" name="count" type="text" placeholder="Количество">
<input v-model="product.comment" name="comment" type="text" placeholder="Примечание">

А вот непосредственно перед выполнением запроса - да, можно и отдельный массив сделать, обходите products и достаёте из него нужные данные.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы