Добавление таблицы с помощью URL-тега JQuery в Django
У меня есть таблица, которую я дополняю данными о пользователе, и я хочу добавить тег Django URL к строке и получить первичный ключ в теге.
примерно так:
function putTableData(response) {
let row;
$("#table_body").html("");
if (response["data"].length > 0) {
$.each(response["data"], function (a, b) {
row = `<tr>
<td>${b["first_name"]} ${b["last_name"]}</td
<td>${b["phone"]}</td>
<td>
<a onclick='console.log("${b["pk"]}")' data-url="{% url 'users:edit' user.${b["pk"]} %}">
</a>
</td>
</tr>`;
$("#table_body").append(row)
В журнале консоли onclick выводится первичный ключ users, но когда я пытаюсь добавить тег data url, я получаю "Could not parse the remainder ${b["pk"]}
".Как я могу заставить это работать?
Попробуйте это:
$.each(response["data"], function (a, b) {
data_url = "{% url 'users:edit' 1 %}".replace(1, b["pk"])
row = `<tr>
<td>${b["first_name"]} ${b["last_name"]}</td
<td>${b["phone"]}</td>
<td>
<a onclick='console.log("${b["pk"]}")' data-url="+data_url+">
</a>
</td>
</tr>`;
$("#table_body").append(row)
});
Я смог решить с помощью:
function putTableData(response) {
let row;
$("#table_body").html("");
if (response["data"].length > 0) {
$.each(response["data"], function (a, b) {
row = `<tr>
<td>${b["first_name"]} ${b["last_name"]}</td
<td>${b["phone"]}</td>
<td>
<a data-url="/users/${b["pk"]}/edit">
</a>
</td>
</tr>`;
$("#table_body").append(row)