67👍
✅
There are a few issues with your code:
You need to use render_to_string
.
You also don’t need to convert your HTML into json because you are replacing the contents directly.
Putting all this together you have:
from django.template.loader import render_to_string
from django.http import HttpResponse
if request.is_ajax():
html = render_to_string('frontend/scroll.html', {'dishes': dishes})
return HttpResponse(html)
In your front end, you need:
$.ajax({
type: "POST",
url: "/filter_home",
data: {'name': 'me', 'csrfmiddlewaretoken': '{{ csrf_token }}'},
success : function(data) {
$('.row.replace').html(data);
}
});
0👍
The first argument of RequestContext is a request object.
You could either add the request object or use the Context class instead.
- [Django]-Django-rest-framework, multitable model inheritance, ModelSerializers and nested serializers
- [Django]-Getting TypeError: __init__() missing 1 required positional argument: 'on_delete' when trying to add parent table after child table with entries
- [Django]-How to get the currently logged in user's id in Django?
-1👍
First parameter to RequestContext()
should be request
, so update line in your code as
html = t.render(RequestContext(request, {'dishes': dishes})
- [Django]-Checking the number of elements in an array in a Django template
- [Django]-Django: no such table: django_session
- [Django]-Error: could not determine PostgreSQL version from '10.3' – Django on Heroku
Source:stackexchange.com