如何修复“未捕获的类型错误”在django-admin 中的collapse.min.js 中?

发布于 2024-09-03 04:01:34 字数 399 浏览 4 评论 0原文

我一直在关注 Django 教程,到目前为止一切正常按计划。

除了“崩溃”。

在我的管理页面上,我的 Javascript 控制台上出现错误:

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

我假设这是 jQuery 或折叠脚本中的错误。然而我的问题只是如何修复它,因为我已经安装了最新的 libjs-jquery 包,并且 crash.js 似乎是 Django 创建的。

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 on 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.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

思念满溢 2024-09-10 04:01:34

此链接指出,first() 函数仅适用于 jquery 1.4 及更高版本:http://api.jquery。 com/first/

对我来说看起来像是一个 django bug。他们需要通过执行以下操作之一来修复此问题:

  • 使用 jquery 1.4 而不是 jquery 1.3.2
  • 将collapse.min.js 更改为仅使用 jquery 1.3.2 中提供的功能来达到相同的效果。

不过,如果 jquery 1.4 不严格向后兼容,第一个选项可能会对整个站点产生影响。

更新:对于那些感兴趣的人,这可以在 Django 1.2.1 Final 中看到。

更新:我刚刚重新下载了 Django-1.2.1 的新副本,它似乎已修复。它使用 jquery 1.4.2,所以我想它现在应该可以工作(未经测试)。

我不确定为什么我在结帐时看到此错误,但至少它已经解决了。 :)

另一个更新:这是由于包管理系统。在 Ubuntu 上,jquery 包与 django 是分开的。所以django包对jquery包有依赖。然而,无论是谁设置了 ubuntu django 包,似乎都指定只需要 jQuery 1.3.2,而不是版本 1.4.2。因此,该错误位于 ubuntu django 包中,而不是 django 本身。

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.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文