Home > database >  How to avoid that Django adds url link to every html element that follows the link
How to avoid that Django adds url link to every html element that follows the link

Time:12-04

i would like to achieve something very basic in Django but can't find out what I am doing wrong. On my apps "index.html", I would like to add a button which redirects to another html template ("site.html") with other content. I added the following to "index.html" which is working:

<body>
<h2>foo</h2>
    {% block content %}
    <button><a href="{% url 'site' %}"/>Click</button>
    {% endblock %}
<p>bar</p>
</body>

Clicking on the button gets me to "site.html", however all html items which I add on "index.html", for example the paragraph "bar" would also get rendered as hyperlink. I tried creating different Django blocks or making different html sections but that doesn't fix it.

Thank you for your help.

CodePudding user response:

You're missing a closing anchor </a> tag after your element.

<body>
<h2>foo</h2>
    {% block content %}
    <button><a href="{% url 'site' %}">Click</a></button>
    {% endblock %}
<p>bar</p>
</body>

I will note that I'm not sure it's "correct" to have an anchor tag within a button. I think you're better off styling your anchor tag to appear as a button.

  • Related