спасибо Daniel Roseman за идею ajax. Мне удалось это сделать, вызвав функцию ajax для извлечения некоторого шаблона htmnl, который обновляется вместе с содержимым, и добавления его в область, которую я хотел. Я сделал вид django, подобный этому
def get_hotel(request,id, pk):
place = Location.objects.get(id=id)
hotel = Hotels.objects.get(id=id)
context = {
'rooms':hotel.rooms.all(),
'hotel':hotel,
'place':place,
}
html = render_to_string("home/hotel_rooms.html", context)
return HttpResponse(html)
Это было представление для обновления содержимого в шаблоне home / hotel_rooms.html Затем я создал этот шаблон
<div class="hotel{{place.id}} panel lastminute4"
style="margin:10px; padding:10px; text-align:left; padding-bottom:0px;">
<h5><a style="font-weight:900; text-transform:uppercase;" href="" data-toogle="tooltip">{{hotel.hotel_name}}</a>
{% for room in rooms %}
<h6>{{room.title}} *ksh. <span style="color:green;">{{room.amount}}</span></h6>
<button class="btn btn-default btn_minus" data-target="htl_{{place.id}}_{{room.id}}"
style="display:inline;" formtarget="cost_{{place.id}}_{{room.id}}">− room
</button>
<input type="number" class="form-control" min="0" value="0" formtarget="{{room.amount}}"
id="htl_{{place.id}}_{{room.id}}" readonly style="width:60px; background:white; display:inline;">
<button class="btn btn-default btn_add" data-target="htl_{{place.id}}_{{room.id}}"
style="display:inline;" formtarget="cost_{{place.id}}_{{room.id}}">+ room
</button>
<b id="cost_{{place.id}}_{{room.id}}" style="font-size:15px;"> = Ksh.0</b>
{% endfor %}
</div>
, а затем в моем ajax
function updateContent(id, pk){
$.ajax({
type: 'GET',
url: '/get_hotel/' + id +'/'+ pk,
data: id,
datatype: "json",
success: function(data){
div_id = "#append_hotel"+ pk;
$(div_id).append(data);
},//success
error: function(){
console.logs("AJAX - failure.");
}//error
});
};
Большое вам спасибо за эту работу, как зачарование