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

Django框架下配置iframe加载导航栏对应页面的URL配置问题

问题原因排查与解决方案

你当前配置失效的核心问题出在urls.py的语法和路由规则冲突,具体问题点如下:

  • 导入语法错误:django.views.generic,base里的逗号应为点,正确导入路径是django.views.generic.base
  • 重复路由冲突:你同时定义了两个name为welcomeAdmin的路由,Django会优先匹配先写的TemplateView路由,但TemplateView指定的模板路径和你实际存放路径不匹配,且和你写的自定义视图重复冲突
  • 缺失依赖导入:使用url()函数但没有提前导入,Django 3.x+版本更推荐用re_path()替代旧版url()
  • 路由规范问题:路由路径末尾缺斜杠,和Django默认的APPEND_SLASH重定向规则冲突,容易出现404
修正后的APP urls.py代码
from django.urls import path
from . import views

urlpatterns = [
    path('', views.homeAdmin, name='homeAdmin'),
    path('welcomeAdmin/', views.welcomeAdmin, name='welcomeAdmin'),
    path('category/', views.category, name='category'),
    path('company/', views.company, name='company'),
    path('register/', views.register, name='register'),
    path('role/', views.role, name='role'),
    path('supplier/', views.supplier, name='supplier'),   
]
额外必检配置
  • 确认项目根目录下的urls.py(和settings.py同目录)已经包含当前APP的路由:
from django.contrib import admin
from django.urls import path, include

urlpatterns = [
    path('admin/', admin.site.urls),
    # 替换为你自己的APP名称
    path('', include('你的APP名.urls')),
]
  • 确认settings.py的INSTALLED_APPS列表中已经添加了你创建的APP
  • 确认所有HTML文件存放路径为你的APP名/templates/你的APP名/,和视图中render的模板路径你的APP名/xxx.html对应

修改完成后重启Django服务,点击导航栏链接即可在指定iframe中加载对应页面。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 23:57:03