Прекратить объединение HTML hrefs в адресную строку - PullRequest
0 голосов
/ 11 января 2020

У меня есть btn-group с некоторыми кнопками, каждая из которых приведет к отдельной странице. btn-group будет видно на каждой странице.

Вот html для btn-group,


        <div class="btn-group-lg text-center" role="group" aria-label="Basic example">

            <a class="btn btn-outline-primary" href="" role="button">Home</a>
            <a class="btn btn-outline-primary" href="view_schedule/" role="button">Schedule</a>
            <a class="btn btn-outline-primary" href="view_syllabus/" role="button">Syllabus</a>
            <a class="btn btn-outline-primary" href="view_records/" role="button">Records</a>
            <a class="btn btn-outline-primary" href="view_achievements/" role="button">Achievements</a>
            <a class="btn btn-outline-primary" href="view_gallery/" role="button">Gallery</a>
            <a class="btn btn-outline-primary" href="view_contact/" role="button">Contact</a>
            <a class="btn btn-outline-primary" href="about/" role="button">About Us</a>

        </div>

Но всякий раз, когда я нажимаю кнопку, он изменяет URL-адрес в адресная строка. Пример: - Из http://127.0.0.1: 8000 / shotokankaratebd / , если я нажимаю кнопку «Расписание», она меняет URL-адрес на http://127.0.0.1: 8000 / shotokankaratebd / view_schedule .

После этого, если я снова нажму кнопку расписания, она изменится на http://127.0.0.1: 8000 / shotokankaratebd / view_schedule / view_schedule , который является недействительным URL-адресом, и я получаю ошибку.

Как можно написать так, чтобы при каждом нажатии кнопки затрагивалась только часть после http://127.0.0.1: 8000 / shotokankaratebd / ?

ИЗМЕНЕНО для включения новых ссылок:


            <a class="btn btn-outline-primary" href="../shotokankaratebd/" role="button">Home</a>
            <a class="btn btn-outline-primary" href="../shotokankaratebd/view_schedule/" role="button">Schedule</a>
            <a class="btn btn-outline-primary" href="../shotokankaratebd/view_syllabus/" role="button">Syllabus</a>
            <a class="btn btn-outline-primary" href="../shotokankaratebd/view_records/" role="button">Records</a>
            <a class="btn btn-outline-primary" href="../shotokankaratebd/view_achievements/" role="button">Achievements</a>
            <a class="btn btn-outline-primary" href="../shotokankaratebd/view_gallery/" role="button">Gallery</a>
            <a class="btn btn-outline-primary" href="../shotokankaratebd/view_contact/" role="button">Contact</a>
            <a class="btn btn-outline-primary" href="../shotokankaratebd/about/" role="button">About Us</a>

Ответы [ 3 ]

1 голос
/ 12 января 2020

Если ваши URL ведут к другому представлению или представлению другого приложения, вам следует использовать django функцию использования динамических c URL.

Например, если у вас есть представление view_schedule, вам следует дайте ему имя в urls.py, например

urlpatterns = [
...
path('shotokankaratebd/view_schedule/', views.name_of_your_view, name=view_schedule),
...
]

, и в любое время и в любом шаблоне, если вы хотите получить доступ к этому представлению, вы можете просто набрать

template. html

<a href="{% url 'view_schedule' %}"><button>Schedule</button></a>

вместо

 class="btn btn-outline-primary" href="/shotokankaratebd/view_schedule/" role="button">Schedule</a>

Жесткое кодирование так.

1 голос
/ 12 января 2020

Вы не должны жестко кодировать свои URL. Используйте тег шаблона django , чтобы получить URL для ваших просмотров.

0 голосов
/ 12 января 2020

решаемая. Все, что мне нужно было сделать, это запустить мои hrefs с /, что бы сбросить URL обратно на http://127.0.0.1: 8000 / после каждого нажатия кнопки.

HTML кнопки выглядят следующим образом:

        <div class="btn-group-lg text-center" role="group" aria-label="Basic example">

            <a class="btn btn-outline-primary" href="/shotokankaratebd/" role="button">Home</a>
            <a class="btn btn-outline-primary" href="/shotokankaratebd/view_schedule/" role="button">Schedule</a>
            <a class="btn btn-outline-primary" href="/shotokankaratebd/view_syllabus/" role="button">Syllabus</a>
            <a class="btn btn-outline-primary" href="/shotokankaratebd/view_records/" role="button">Records</a>
            <a class="btn btn-outline-primary" href="/shotokankaratebd/view_achievements/" role="button">Achievements</a>
            <a class="btn btn-outline-primary" href="/shotokankaratebd/view_gallery/" role="button">Gallery</a>
            <a class="btn btn-outline-primary" href="/shotokankaratebd/view_contact/" role="button">Contact</a>
            <a class="btn btn-outline-primary" href="/shotokankaratebd/about/" role="button">About Us</a>

        </div>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...