Мне нужно вывести response.errors.detail
как строку в alert
. При попытке alert(response.errors.detail)
получаю уведомление: [object Object]
.
$.ajax({
url: "http://127.0.0.1:8000/auth/users/create/",
type: "POST",
data: {
email: this.email,
username: this.login,
password: this.password
},
success: (response) => {
alert("Аккаунт зарегистрирован");
this.$router.push({name: 'home'})
},
error: (response) => {
alert(response.errors.detail)
}
})
Ответ POST запроса:
{
"errors": [
{
"detail": "Введённый пароль слишком похож на имя пользователя.",
"source": {
"pointer": "/data/attributes/password"
},
"status": "400"
},
}
Вот перебор и вывод ошибок.
let result = '';
response.errors.forEach((el) => {
result += `${el.detail} \n`;
});
alert(result)
const response = {
"errors": [{
"detail": "Введённый пароль слишком похож на имя пользователя.",
"source": {
"pointer": "/data/attributes/password"
},
"status": "400"
}, {
"detail": "Ошибка 2",
"source": {
"pointer": "/data/attributes/password"
},
"status": "400"
}, {
"detail": "Ошибка 3",
"source": {
"pointer": "/data/attributes/password"
},
"status": "400"
}, ]
}
error = () => {
let result = '';
response.errors.forEach((el) => {
result += `${el.detail} \n`;
});
alert(result)
}
<button onclick="error()">test</button>
Удалось вывести с помощью команды:
alert(JSON.stringify(response.responseJSON.errors['0'].detail));
Не удивляйтесь, у меня сначала тоже глаза на лоб полезли :/
Оборудование для ресторана: новинки профессиональной кухонной техники
Частный дом престарелых в Киеве: комфорт, забота и профессиональный уход
Более опытные разработчики, помогите, уже все испробовалВо время очередной верстки сайта у меня на маленьких экранах перестала работать...
посмотрите пожалуйста на мокапКрасные блоки - простой контент