Добавление призывов к действию StreamField к базе. html с использованием Wagtail CMS - PullRequest
0 голосов
/ 17 апреля 2020

Привет, я новичок в использовании Wagtail и работаю над клиентским сайтом. Я хочу динамически связать мои страницы трясогузки с нашей боковой панелью, которая в настоящее время находится в нашей базе. html в директории шаблонов главной папки приложения, в которой находится файл settings.py. Мне было интересно, если есть способ сделать призыв к действию для базы. html здесь. Или, если я вместо этого создам отдельное приложение и создам базу. html, которая распространяется на все остальные шаблоны, которые я буду использовать для остальной части сайта. Спасибо!

edit: Над текущей домашней страницей, с которой я работаю. Боковая панель прямо сейчас жестко запрограммирована, так как я не работал над этим, и я хочу знать, как выглядит остальная часть страницы, пока я работаю с основным контентом.

боковая панель Выше кодируется так:

        <!-- in biodept/templates/base.html -->
        {% wagtailuserbar %}

        <div class="container main-container">
            <div class="row">
            <!-- Nav bar not mobile -->
            <nav class="nav" id="nav-1">
                <a class="nav-link nav-desktop-link nav-desktop-link-active" href="#">HOME</a>
                <a class="nav-link nav-desktop-link" href="#">BIOMEDICINE</a>
                <a class="nav-link nav-desktop-link" href="#">ECOLOGY & SYSTEMATICS</a>
                <a class="nav-link nav-desktop-link" href="#">MOLECULAR BIO & BIOTECH</a>
                <a class="nav-link nav-desktop-link" href="#">PROJECTS</a>
                <button class="dropdown-btn nav-link nav-desktop-link">PROGRAMS<ion-icon style="float: right; padding-top: 0.25vw;" name="caret-down-outline"></ion-icon></button>
                    <div id="btn-t" class="dropdown-container">
                        <a class="nav-link dropdown-nav-desktop-link" href="#">UNDERGRADUATE</a>
                        <a class="nav-link dropdown-nav-desktop-link" href="#">GRADUATE</a>
                    </div>
                <a class="nav-link nav-desktop-link" href="faculty.html">FACULTY PAGES</a>
                <a class="nav-link nav-desktop-link" href="#">BIODIVERSITY LABORATORY</a>
            </nav>
        {% block content %}{% endblock %}
            </div>
        </div>

Опять база. html находится в том же каталоге, где находится файл settings.py. BioDept - это название проекта.

1 Ответ

0 голосов
/ 18 апреля 2020

Примечание. Исходя из обновленного вопроса, похоже, что он не связан с StreamField, но это вопрос о том, как реализовать меню на основе структуры страницы трясогузки.

Трясогузка не поставляется со встроенным в способе визуализации меню это происходит потому, что это будет что-то конкретное c для каждого сайта Wagtail, и любое универсальное решение c, вероятно, будет охватывать лишь небольшой набор случаев. Тем не менее, при начале работы это может немного сбить с толку.

Трясогузка, даёт способ указать, что страница должна отображаться в меню, хотя, это часть каждой Page модели.

Вы можете увидеть это в справочнике модели здесь https://docs.wagtail.io/en/latest/reference/pages/model_reference.html#wagtail .core.models.Page.show_in_menus

Пользователи могут редактировать это значение на вкладке «Повышение», а также документы Выше вы можете определить, каким должно быть значение по умолчанию (однако существующие страницы необходимо будет обновить другим способом).

enter image description here

Реализация меню

Вот три способа реализации меню и использования его в качестве шаблона тега или шаблона включения в ваш проект.

  1. Посмотреть код Bakerydemo

  2. Следуйте учебному пособию

    • Поиск в Google 'Wagtail navigation' или 'Wagtail menus' может помочь, но эта ссылка ниже, кажется, актуальна и дает вам очень полезную информацию о том, как построить основы c Wagtail меню, а затем расширить его с помощью расширения (добавлено ниже)
    • https://www.accordbox.com/blog/wagtail-tutorial-12-how-create-and-manage-menus-wagtail-application/
  3. Установить пакет расширения

    • Этот пакет, кажется, дает надежное решение, но не используйте его, если вы можете получить то, что вам нужно, без добавления другой зависимости (мое мнение)
    • https://wagtailmenus.readthedocs.io/en/stable/overview.html
...