Задать вопрос
Ответы пользователя по тегу Django
  • Почему не наследуется блок {% block nav %} в блоке {% block content %} в django?

    datka
    @datka
    base.html
    <!DOCTYPE html>
    <html lang="en">
      <head>
        <meta charset="UTF-8" />
        <title>
          {% block title %}
            Главная
          {% endblock %}
        </title>
      </head>
      <body>
        {% if user.is_authenticated %}
          <div>
            <nav>
              <div>
                <h1>Главная</h1>
                <ul>
                  <li>
                    <a href="/">Главная</a>
                  </li>
                  <li>
                    <a href="/posts">Блог</a>
                  </li>
                  <li>
                    <a href="/help">Помощь</a>
                  </li>
                  <li>
                    <form action="{% url 'logout' %}" method="post">
                      {% csrf_token %}
                      <button type="submit">Выйти</button>
                    </form>
                  </li>
                </ul>
              </div>
            </nav>
          </div>
          <div>
            {% for posts in post_title reversed %}
              <h3><a href="/posts/{{ posts.id }}">{{ posts.title }}</a></h3>
            {% endfor %}
          </div>
        {% else %}
          <div>
            <nav>
              <div>
                <div>
                  <h1>Главная</h1>
                  <ul>
                    <li>
                      <a href="/">Главная</a>
                    </li>
                    <li>
                      <a href="/posts">Блог</a>
                    </li>
                    <li>
                      <a href="/help">Помощь</a>
                    </li>
                    <li>
                      <form action="{% url 'login' %}" method="post">
                        {% csrf_token %}
                        <button type="submit">Войти</button>
                      </form>
                      <form action="{% url 'signup' %}" method="post">
                        {% csrf_token %}
                        <button type="submit">Регистрация</button>
                      </form>
                    </li>
                  </ul>
                </div>
              </div>
            </nav>
          </div>
          <div>
            {% for posts in post_title reversed %}
              <h3><a href="/posts/{{ posts.id }}">{{ posts.title }}</a></h3>
            {% endfor %}
          </div>
        {% endif %}
    
        {% block content %}
    
        {% endblock %}
      </body>
    </html>


    create_post.html
    {% extends 'forum/base.html' %}
    
    {% block title %}
      Новый пост
    {% endblock %}
    
    {% block content %}
      {% if user.is_authenticated %}
        <h1>Напишите свой пост</h1>
        <form action="{% url 'add_post' %}" method="post">
          {% csrf_token %}
          <div>
            <label><input name="title" placeholder="Заголовок..." /></label>
          </div>
          <div>
            <label><textarea name="description" placeholder="Текст поста..."></textarea></label>
          </div>
          <div>
            <input type="submit" />
          </div>
        </form>
      {% else %}
        <h1>Вы не авторизованы</h1>
        <form action="{% url 'login' %}" method="post">
          {% csrf_token %}
          <button type="submit">Войти</button>
        </form>
        <form action="{% url 'signup' %}" method="post">
          {% csrf_token %}
          <button type="submit">Регистрация</button>
        </form>
      {% endif %}
    {% endblock %}


    Не совсем понял вашу логику. Но Nav дожен идти до block content
    Ответ написан
    Комментировать
  • Как сделать так чтобы CBV-функция DetailView в Django принимала объект по slug?

    datka
    @datka
    slug_field

    slug_field¶
    The name of the field on the model that contains the slug. By default, slug_field is 'slug'.

    slug_url_kwarg¶
    The name of the URLConf keyword argument that contains the slug. By default, slug_url_kwarg is 'slug'.


    urlpatterns = [
        path("<slug:slug>/", ArticleDetailView.as_view(), name="article-detail"),
    ]


    Точнее можете глянуть тут
    Ответ написан
    Комментировать
  • Где создать 'manage.py' в Windows?

    datka
    @datka
    Когда вы открываете CMD вы должны указать полный путь к manage.py . он его не находит.
    В папке где лежит manage.py зажмите Shift + Правая кнопка мыши на пустом месте а дальше выберите Открыть окно команд а потом python manage.py migrate

    или через cmd командой cd переключиться на папку где лежит manage.py
    Ответ написан
    Комментировать