을 자바 스크립트/jquery 파일에서 AJAX 요청 용으로 사용하려고하는데이 문제를 해결할 수있는 몇 가지 해결책을 찾았습니다. 내가 현재 사용하고있는 것은 다음과 같다. 그럼 난 자바 스크립트 파일을 렌더링하는 뷰를 정의자바 스크립트 파일에서 장고 URL 사용
urls.py
url(r'^js/([\w\.\-]+)/([\w\.\-]+)/$', 'views.get_javascript_file', name='get_javascript_file')
url(r'^getmoredicus/$', 'load_discussions', name="load-discus"),
:
나는 자바 스크립트 파일을 제공하는 URL을 정의합니다.
views.py :
def get_javascript_file(request, app_name, js_file):
'''
Used to request and serve rendered javascript/jquery files.
'''
return render_to_response("%s/%s.js" % (app_name, js_file),
context_instance=RequestContext(request))
은 이제 HTML 파일에서, 우리는 렌더링 자바 스크립트 파일을 얻을 수있는
get_javascript_file
URL을 사용할 수 있습니다.
HTML 파일 :
<script type="text/javascript" src="{% url get_javascript_file 'myapp' 'jsfile' %}"></script>
지금 어떤 자바 스크립트 파일에서, 내가
{% url url-name %}
통해
url-names
에 액세스 할 수 있습니다.
질문 :
1) 자바 스크립트 파일에 url-names
를 사용하는 더 나은/더 빠른 방법이 있나요? 이미이 작업을 수행하기 위해 만들어진 일부 앱이 있음을 알고 있지만이를 달성하기위한 최선의 방법에 대해 모든 사람 (장고 전문가)의 의견을 듣고 싶습니다.
2) 렌더링 된 javascript 파일을 처음 렌더링 한 후 캐시 할 수 있으므로 이후 요청시 다시 렌더링 할 필요가 없습니다. 그렇다면 우리는 어떻게 그렇게 할 수 있습니까?
3)이 방법에서는 해당 apps 폴더에서 스크립트 파일을 렌더링합니다. get_javascript_file
보기에서 STATIC_ROOT
에있는 정적 파일에 액세스 할 수 있습니까? 프로덕션 환경에서 이것이 어떻게 작동하는지 생각하고 있습니다. 정적 파일을 STATIC_URL
에 넣고 거기에서 액세스하는 대신 앱 폴더에서 액세스하는 것이 좋습니다.
참고
내가 그이 질문의 일부 답변을 SO에 대한 몇 가지 질문이 이미 있다는 것을 알고 있지만 난 그냥 한번의 바닥에와 미래의 장고 학습자를위한 모든 얻고 싶었다. 무엇보다도 url-names
을 javascript
또는 script
에 사용하는 가장 좋은 방법은 무엇입니까?