开发者

Load jQuery into Django

I have a really basic question. I'm trying to build some AJAX functionality into a Django project. I plan to use jQuery. Right now, I'm just running the code locally through Linux. I've been testing some code here so I'm reasonably certain that it works. But I'm having trouble figuring wh开发者_Go百科ere to put the jQuery source code in combination with my settings.

I downloaded jQuery and put it in what I think is my Media folder. My settings.py file reads as follows:

MEDIA_ROOT = os.path.join(PROJECT_DIR, 'books/media/')<br>
MEDIA_URL = 'http://localhost:8000/books/media/'

In my html template, I'm referencing:

<script type="text/javascript" src="/media/js/jquery-1.4.2.min.js">

But none of my functions are working. I'm sure it's something stupid and obvious (though clearly not obvious to me). How do I correctly source jQuery?


You can hardcode the link as

<script type="text/javascript" src="/books/media/js/jquery-1.4.2.min.js">

or if you render your template with a RequestContext and use the django.core.context_processors.media context processor, then you can access MEDIA_URL in your template.

<script type="text/javascript" src="{{ MEDIA_URL }}}js/jquery-1.4.2.min.js">


I believe you'll need src="/books/media/js/jquery-1.4.2.min.js"

Also, though, I do it thusly.

<script type="text/javascript" src="http://www.google.com/jsapi"></script>
<script type="text/javascript">
  google.load("jquery", "1.4");
</script>


You need to setup Django to serve your media files (otherwise, serve them from a proper HTTP server). Add the following line to your url.py:

(r'^mymedia/(?P<path>.*)$', 'django.views.static.serve', {'document_root': settings.MEDIA_ROOT}),

Make sure you change the mymedia part to align with your media directory.


Can you try the following:

  1. Access the URL http://localhost:8000/books/media/js/jquery-1.4.2.min.js using your browser or curl and see what turns up.

  2. Check your URL configuration to see that you have an URL defined for serving media using static serve.


Step1: put your jquery-2.0.3.js in the APP's "static" subfolder,like "books/static/jquery-2.0.3.js";

Step2: config your urls.py, add the following line:

r('^static/(?P<path>.*)$','django.views.static.serve'),

Step3: in your template file, use the js file as follows:

<script type="text/javascript" src="/static/jquery-2.0.3.js"></script>

That is all.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜