Как перезагрузить сегмент веб-страницы в Django? - PullRequest
0 голосов
/ 04 марта 2019

В django я пытаюсь создать кнопки, которые изменяют один сегмент веб-страницы, загружая html-файл.HTML-файл показывает карту, статистику и прочее, поэтому они должны быть отдельными.Мой подход состоял в том, чтобы использовать вызов ajax и в представлении вернуть файл html.

<script type="text/javascript" >
function mapcall (office, year){ 
        console.log(office, year, "clicked")
    $.ajax ({
        method : "GET", 
        url: '/map/', // % url "map" % end point 
        data: {
            office_called: office,
            year_called: year,
        },
        success: function (map){
            console.log("map is here ", map)
            $("#maparea").load($( "{% static 'my_html_return' %}"
            ))},
        error: function (error_data){
        alert("data error, sorry")
        }
    })
}
</script>
<div id="maparea">
    {% if map_return %}
        {% with map_template=map_return|stringformat:"s"|add:".html" %}
            {% include "mypath/"|add:map_template %}
        {% endwith %}
    {% endif %}
</div>

Это мой view.py

def get_map (request, *args, **kwargs):
year = request.GET.get("year_called")          
office = request.GET.get("office_called") 

map_return = "map"+str(year)+office

return render(request, "mypath/home.html", 
{"title": "Home", "map_return":map_return})

Я не знаю, как это сделатьРабота.Любое предложение приветствуется.

1 Ответ

0 голосов
/ 05 марта 2019

Я понял, что мне нужно сделать .html (взять html return из ajax в качестве аргумента) вместо .load в моем случае.Я надеюсь, что это помогает другим людям.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...