문제

I've been following the Django tutorial, and so far everything's been working as planned.

Except "collapse"ing.

On my admin page, I get the error in my Javascript Console:

Uncaught TypeError: Object #<an Object> has no method 'first'   collapse.min.js:1

I'm assuming this is a bug in jQuery, or the collapse script, however my question is simply how to fix it, as I've installed the latest libjs-jquery package and collapse.js seems to be Django-created.

Thanks.

도움이 되었습니까?

해결책

This link states that the first() function is only in jquery 1.4 and above: http://api.jquery.com/first/

Looks like a django bug to me. They need to fix it by doing ONE of the following:

  • Use jquery 1.4 instead of jquery 1.3.2
  • Change collapse.min.js to only use features available in jquery 1.3.2 to achieve the same effect.

The first option may have repercussions throughout the site, though, if jquery 1.4 isn't strictly backward compatible.

Update: for those interested, this is seen in Django 1.2.1 final.

Update: I just re-downloaded a fresh copy of Django-1.2.1, and it appears to be fixed. It is using jquery 1.4.2, so I imagine it should work now (untested).

I'm not sure why I'm seeing this error on my checkout, but at least it has been resolved. :)

Another update: this is due to package management systems. On Ubuntu, the jquery package is separate from django. So the django package has a dependency on the jquery package. However, whoever setup the ubuntu django package appears to have specified that only jQuery 1.3.2 is needed, not version 1.4.2. The bug therefore is in the ubuntu django package, not django itself.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top