【问题标题】:Why is the Django-Simple-Captcha image not showing up?为什么没有显示 Django-Simple-Captcha 图像?
【发布时间】:2014-01-12 04:01:01
【问题描述】:

我正在尝试将 Django-Simple-Captcha 图像添加到我的应用程序的登录屏幕。

这是我在 forms.py 文件顶部添加的内容:

from captcha.fields import CaptchaField

这是我在注册表中添加的内容:

captcha = CaptchaField(
    label="What does this say?",
    required=True,
)    

这是我添加到我网站的 url.py 文件中的内容: urlpatterns += 模式( '', url(r'^captcha/', 包括('captcha.urls')), )

我还在 settings.py 中的 INSTALLED_APPS 中添加了“验证码”

但是,当我加载页面时,我看到验证码图像是一个损坏的链接:http://predictstat.com/accounts/register/。服务器在控制台上显示:

[23/Dec/2013 16:30:47] "GET /captcha/image/56edd656ba57a2a3e71571373e1a59c564e3d592/ HTTP/1.1" 500 72336

但是,我的应用程序的目录下没有这样的目录“captcha”。那么它在哪里寻找这张图片呢?为什么它不存在?

【问题讨论】:

  • 我目前正在处理同一个问题。有趣的事实:如果您使用 html 检查器(例如 Firebug 或 Chrome 工具)并将图像 url 更改为 /captcha/static/image/.../ 它会显示。现在我正试图弄清楚如何转换这个 url 或制作某种 collectstatic。

标签: django captcha


【解决方案1】:

经过仔细检查,我发现问题是这样的:

异常值:_imagingft C 模块未安装。

如何解决这个问题的详细信息可以在这里找到:Python: The _imagingft C module is not installed

【讨论】:

    【解决方案2】:

    无需创建任何captcha 目录。

    问题是您没有像documentation 中提到的那样更新您的urls.py

    urlpatterns += patterns('',
        url(r'^captcha/', include('captcha.urls')),
    )
    

    另一个问题可能是你没有运行syncdb

    ./manage.py syncdb
    ./manage.py migrate   # If you use migrations
    

    【讨论】:

    • 对不起,我没有提到它,我确实更新了我的 urls.py: urlpatterns += patterns('', url(r'^captcha/', include('captcha.urls')) , )
    • 在访问/catcha/img/ url时出现错误,尝试找出是什么错误。您是否运行了 syncdb 并运行了迁移(如果您使用它们)?
    • 是的。同步数据库已运行。访问验证码/图像/没有错误。图像根本不显示。但我不认为它真的希望该目录仍然存在。 (在我拥有的另一个工作 django-captcha 应用程序中,它不存在)所以我有点困惑。
    【解决方案3】:

    我的应用程序中也发生了同样的情况,我设法在 django-simple-captcha 0.4.4 中使用两个斜杠制作了一个非常奇怪的解决方法(XGH alert)

    urlpatterns += patterns('',
        url(r'^captcha//', include('captcha.urls')),
    )
    

    【讨论】:

      【解决方案4】:

      我认为这可能与全局和virtureenv环境的冲突有关,可能是另一个应用程序包含名称captcha

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2014-01-12
        • 1970-01-01
        • 2011-11-05
        • 2020-07-09
        • 1970-01-01
        • 1970-01-01
        • 2012-11-26
        相关资源
        最近更新 更多