#vue.js #django-rest-framework #axios
#vue.js #django-rest-framework #axios
Вопрос:
Привет, итак, я пытаюсь разрешить пользователям изменять части своего профиля после его создания с помощью запроса PUT. На вкладке «Моя сеть» отображается код 200 и что данные были успешно отправлены.
Я также проверил свой Api, и это показывает, что этот идентификатор профиля является последним, который был добавлен в набор данных. Однако вместо значения «test», которое я пытаюсь отправить в поле с именем «bio», по-прежнему отображается значение по умолчанию.
Соответствующие части из моего интерфейса и биополя в Django:
<div>
<form method="put" @submit.prevent="updateData">
<input type="text" name="bio" v-model="form.bio" />
<button type="submit">Update</button>
</form>
</div>
data: () => ({
form: {
bio: ""
},
results: null
}),
updateData() {
this.$axios
.put("http://127.0.0.1:8000/api/v1/actors/45/", {
data: this.form
})
.then(response => {
this.resultss = response.data;
});
}
bio = models.TextField(default="3 Paragraphs")
Комментарии:
1. Вы пытались проверить, что у вас внутри
this.form
перед отправкой на сервер? Это может быть проблема с областью действия. Попробуйте добавитьvar scope = this
в качестве первой строки внутриupdateData()
и использоватьscope.$axios
иscope.form
2. @Gowthama Хм, я попробую. Я вижу на своей вкладке сети в разделе «Полезная нагрузка запроса», что там написано {data: test}, поэтому я предполагаю, что это записывается. Мой код внезапно сломался, и я получаю ошибку 401 atm, давайте сначала исправим это, и я дам вам знать, работает ли scope