链接到另一个网页使用标记,绝对和相对路径的概念,我猜

问题描述:

我想链接我的HTML文件,这是在相同的文件夹下调用“模板”。其中一个文件被称为“home.html”,它有一个链接到另一个名为“page2.html”的html文件。下面的代码工作完美:链接到另一个网页使用<a>标记,绝对和相对路径的概念,我猜

<a href="/page2">Click Me</a> 

但是,这给URL链接的东西这样的:127.0.0.1:8000/page2而不是什么其实我想要的。我希望它是链接这个:127.0.0.1:8000/home/page2。我正在制作一个Django的网络应用程序,但我是新的以所需的形式链接网页。

有没有一种方法可以实现上述使用html标记或使用JavaScript或从Django应用程序的东西?

它与绝对或相对路径有关吗?如果是,如何?好心帮...

+0

您正在接近这个错误。网址指向视图,但不指向模板。 –

+0

我已将它添加到我的urls.py并创建了一个相同的视图。有没有一种方法可以从那里获得URL的附加版本? –

如果您当前的路径是例如127.0.0.1:8000/home你可以这样那样:<a href="./page2">Click me</a> 这becaust ./是当前目录和../是上一级目录

编辑:你应该在Django检查路由

+0

它确实将它附加到我的网址,但我的page2.html没有在浏览器中执行。如何让我的page2.html在追加到URL后运行? –

+0

你想让127.0.0.1:8000/home/page2运行page2.html是吗? – okonek83

+0

这是正确的@ okonek83 –

因为home.html是HTML文件而不是文件夹,所以您不能在路径中使用home/html。如果你非常想拥有像127.0.0.1:8000/home/page2这样的路径,那么创建一个名为home的文件夹,将page2.html移动到该文件夹​​并从那里调用它。虽然不会推荐。

这没什么复杂的。如果你想让你的链接转到“/ home/page2”,那么你应该在href中使用。

但是,在Django中有这样做的更好的方法;你应该使用{% url %}标签。假设您已经在名称为“page2”的urls.py中定义了您的URL,那么请执行<a href="{% url "page2" %}">

+0

我做过之前使用href。然而,由于对此有所了解,导致我遇到了与上面解释的相同的问题。 –

+0

我不明白你的意思。如果你把“/ home/page2”放在你的href里,那就是你要去的地址。如果您的urls.py将“page2”定义为指向/ home/page2,则“{%url”page2“%}”也会解析为该地址。 –

+0

目前,我的我的page2.html添加为我的urls.py中的视图,其工作原理如下: urlpatterns = [ url(r'^ admin /',admin.site.urls), url你好), url(r'^ page2 /',page2,name ='page2'), ] 我想最终在我的网址中看到/ home/page2,对不起混淆 –