Конкатенация возвращает мне имя переменной
Я хочу создать оповещение для удаления пользователей с помощью sweetAlert, но в теге script, когда я создаю свой url из переменной, переданной в качестве параметра в функции, в результате отображается только имя переменной, а не ее значение
function delInscPart(id){
var url = "{% url 'suppPartners' " +id+" %}"
Swal.fire({
"title":"Etes vous sure de vouloir supprimé l invité ?",
"text":"Si vous confirmer cette opération, Vous supprimerais cette invité !",
"icon":"",
"showCancelButton":true,
"cancelButtonText":"Anuller",
"confirmButtonText":"Je confirme",
"reverseButtons":true,
}).then(function(result){
if(result.isConfirmed){
window.location.href = url
console.log(url)
}
})
}
<td><a href= "#" onClick="delInscPart('{{list.user_inscrit.username}}');"><i data-feather="trash-2"></i>Supprimer</a></td>
результатом будет {% url 'suppPartners' +id+ %}
вместо {% url 'suppPartners' admin %}
Проблема в том, что url вашего шаблона никогда не получит динамически параметр в вашей функции javascript. Шаблон отображается на сервере и выдает следующее:
var url = "{% url 'suppPartners' " +id+" %}"
// which becomes something like
var url = "/suppParnters/+id+/"
Таким образом, ваша переменная url никогда не будет обновлена функцией javascript, потому что 'id' находится в шаблоне url, который отображается в шаблоне. Вместо этого вам нужно что-то вроде этого, что вызывает url, но сохраняет параметр JS:
var url = {% url 'suppPartners' %} + id
// which becomes
var url = "/suppParnters/" + id