Istnieje wiele postów i stron omawiających użycie Django i AJAX, a przeczytałem setki w ciągu minionego dnia lub szukając odpowiedzi na to pytanie. Szybki przegląd:Używanie znacznika adresu URL Django w połączeniu AJAX
maja przykłady pokazują zakodowane URL tak:
$.post("/projects/create/", {"name" : name}, function(data) {...
lub niektóre użyć szablon URL, ale bez parametrów:
$.post("{% url create_project %}", {"name" : name}, function(data) {...
jednak Chciałbym dodać parametr adresu Django w adresie URL. Oto moja definicja url:
url(r'ajax/entity_name/(?P<pk>\w+)/$',EntityAjaxView.as_view(),name='entity_name'),
Tak, używam pogląd oparty klasy i jest ona oparta na DetailView. Ten widok domyślnie wyświetla wartość pk podaną w adresie URL, a w szablonie normalnym użyłbym:
{% url entity_name id_number %}
, aby podać link. W moim kodzie chcę pobrać wartość wprowadzoną w polu wejściowym dla wartości pk. Oto fragment mojego kodu JavaScript (które nie działa):
var id_number = $('#id_endowmententity_set-' + rownum + '-id_number').val()
$.ajax({
type: "GET",
url: '{% url entity_name id_number %}',
Więc moje pytanie brzmi, czy mogę użyć adresu URL szablonu tag z wartością z pola tekstowego?
(wiem, że mogę używać POST zamiast GET i przekazać ID_Number w danych POST, ale to nie będzie dobrze współpracować z DetailView.)
Dzięki z góry za pomoc.
Dwie dobre opcje. Dzięki! – Dashdrum