이 때, 사용할 수 있는 부분 렌더링 기술을 소개한다.
def ajax_view(request):
context = {
"my_data": my_data
}
return render(request, 'table_body.html', context=context)
<tbody class="table_body">
{% include 'table_body.html' %}
</tbody>
{% for item in my_data %}
<tr>
<td colspan="2">{{ item.date }}</td>
<td id="item_name_format" colspan="6">{{ item.name }}</td>
{% if item.category_id %}
<td id="item_name_format" colspan="2">{{ item.category_id.level1_desc }}</td>
{% endif %}
<td id="item_amt_format" colspan="2">${{ item.amount|intcomma }}</td>
</tr>
{% endfor %}
function update_item(data) {
console.log(item_num) // sanity check
$('.table_body').html('').load(
//"{% url 'update_items' %}?item_num=" + item_num
//or
"127.0.0.1:8000/url?data=" + data
); // <--- this code instead of $.ajax(lala)
이렇게 부분 렌더링을 하고 싶은 html을 분리.
분리 시킨 html을 렌더링 하는 view를 작성.
load() 메서드 호출하면 부분 렌더링을 할 수 있다.