0

我有一个 Django 站点,主页是 home.html。home.html 中有一个模式,设置为在主页加载几秒钟后自动打开。模态框内是一个 iframe,应该显示 template1.html。但是,当模式出现时,我有一个 404 并且我被告知该页面与我定义的 url 模式不匹配。我不完全确定在哪里或如何让 template1.html 显示在 iframe 中。用户没有在主页上单击以调出新模板,这就是我熟悉使用 Django 的方式。我是否需要创建另一个 url 模式或视图来实现这一点,或者我是否还有路要走?这是我的文件:

网址.py:

from django.conf.urls.defaults import patterns, url  
from disease import views  

    urlpatterns = patterns('',
    url(r'^$', views.home, name='disease_home'),  
    url(r'^disease/(?P<pk>\d+)/$', 'disease.views.disease', name='disease_disease'),  
    url(r'^treatment/(?P<pk>\d+)$', views.treatment, name='disease_treatment'),

home.html 模态:

<div id="challengeModal" class="reveal-modal xlarge">  
    < iframe seamless scrolling="no" src="challenge1.html" name="challenge1"  
id="challenge1"></iframe>  
< /div>

视图.py:

 def home(request):  
    return render(request, "disease/home.html")`  

其他视图根据 template1.html 中的操作返回第二个模板 template2.html

谢谢!

4

2 回答 2

2

简短的回答是是的,您需要另一个 url 模式和 iframe 的视图。iframe 几乎被视为嵌入式浏览器窗口,它会向服务器发出自己的请求。

于 2013-04-24T15:29:04.467 回答
1

iframesrc只是资源的 url。

例如,您可以treatment使用

<iframe src="/treatment/1/"></iframe>

您将需要创建一个视图来提供您的challenge1.html模板和一个 url 来路由到该视图

于 2013-04-24T15:29:24.687 回答