You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Django树莓派部署视图跳转失败求助:switch视图无法跳转至test视图

我帮你排查了代码里的几个关键问题,这应该就是导致跳转失效的核心原因:

1. URL路由匹配顺序错误

你的urls.py里第一个路由是url(r'', views.user_interface, name='interface'),这个正则表达式r''会匹配所有请求路径(因为空字符串是任何URL的前缀),导致后面的switch/和test/路由永远不会被触发——Django是按从上到下的顺序匹配URL的,兜底路由必须放在最后。

修改后的urls.py:

app_name='zuumcoin'
urlpatterns = [
    url(r'switch/', views.switch, name='switch'),
    url(r'test/', views.test, name='test'),
    url(r'', views.user_interface, name='interface'),  # 移到最后作为兜底
]

如果你的Django版本是2.0+,更推荐使用更直观的path语法:

from django.urls import path

app_name='zuumcoin'
urlpatterns = [
    path('switch/', views.switch, name='switch'),
    path('test/', views.test, name='test'),
    path('', views.user_interface, name='interface'),
]

2. HTML模板里的URL名称拼写错误+标签语法问题

你在userInterface.html的form标签里写的是{% url 'zuumcoin:swicht' %},这里的swicht是拼写错误(正确是switch),同时action属性的引号也没闭合,正确写法应该是:

<form action="{% url 'zuumcoin:switch' %}" method="POST">
    {% csrf_token %}
    <!-- 你的表单内容 -->
</form>

3. 额外验证点

  • 确保项目根目录的urls.py已经正确包含了zuumcoin的路由,比如:
    from django.conf.urls import include, url
    
    urlpatterns = [
        url(r'^zuumcoin/', include('zuumcoin.urls')),
        # 其他项目路由
    ]
    
  • 树莓派上的Django部署和本地逻辑完全一致,只要依赖安装正确、路由配置没问题,跳转功能不需要额外调整系统配置。

先把这几个问题修复,应该就能正常触发switch视图的跳转逻辑了。

内容的提问来源于stack exchange,提问作者Hung Do

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.12 04:44:08