Как отобразить bucle для 'post' в карусели Boostertrap? - PullRequest
0 голосов
/ 02 мая 2019

Я новичок в django, и я делаю свой первый проект.

мой вопрос, как отобразить мои сообщения в загрузочном карусели?

Я использовал: Boostrap 4.3.1 Django 2.2

это мой код:

base.html

<html>
<head>
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css">
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js"></script>
    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js"></script>
<body>
     ...
</body>
</head>
</html>

post_list.html

{% extends 'blog/base.html' %}

{% block content %}
<br>
{% for post in posts %}
    <div class="post">
        <div class="date">
            <p>published: {{ post.published_date }}</p>
        </div>
        <h1><a href="{% url 'post_detail' pk=post.pk %}">{{ post.title }}</a>    </h1>
        <h5 class="badge badge-secondary">by {{ post.author }}</h5>
        <p>{{ post.text|linebreaksbr }}</p>
        <a href="{% url 'post_detail' pk=post.pk %}">Comments: {{     post.comments.count }}</a>
    </div>
{% endfor %}
{% endblock %}

models.py

class Post(models.Model):
    author = models.ForeignKey('auth.User', on_delete=models.CASCADE)
    title = models.CharField(max_length=200)
    text = models.TextField()
    created_date = models.DateTimeField(
        default=timezone.now)
    published_date = models.DateTimeField(
        blank=True, null=True)

    def publish(self):
        self.publish_date = timezone.now()
        self.save()


    def __str__(self):
        return self.title

urls.py

urlpatterns = [
    path('', views.post_list, name='post_list'),
    path('post/<int:pk>/', views.post_detail, name='post_detail'),
]

и views.py

def post_list(request):
    posts =Post.objects.filter(published_date__lte=timezone.now()).order_by('created_date')
    return render(request, 'blog/post_list.html', {'posts': posts})

def post_detail(request, pk):
    posts = get_object_or_404(Post, pk=pk)
    return render(request, 'blog/post_detail.html', {'post': posts})

Я пытался с этим кодом, но онне работает:

<div class="carousel-inner">
{% for post in posts|slice:":3" %}
    {% if forloop.first %}
        <div class="active item">
    {% else %}
        <div class="item">
   {% endif %}
        <blockquote>
            <p>{{ post.title }}</p>
        </blockquote>
        <label>{{ post.text }}</label>
    </div>
{% endfor %}
</div>

Я хочу, чтобы это выглядело так без img:

https://i.imgur.com/yPmIWF5.png

мой шаблон выглядит сейчас:

https://i.imgur.com/ajNHmGd.png

спасибо, ребята!

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