繁体   English   中英

Django,帖子下方的评论表单有问题

[英]Django, problem with the comment form below the post

很长一段时间我都想不通,我对管理面板中的帖子的评论做出了总结。 但我就是不知道如何在帖子下方制作评论表供用户发表评论。 谢谢大家!

模型.py

class Post(models.Model):
    photo       = models.ImageField(upload_to='media/photos/',null=True, blank=True)
    name_barber = models.CharField(max_length=30)
    description = models.TextField(blank=True, null=True)

    def __str__(self):
        return self.description[:10]


class Comment(models.Model):
    post = models.ForeignKey(Post, related_name='comments', on_delete=models.CASCADE)
    name = models.CharField(max_length=30)
    body = models.TextField(null=True)
    add_date = models.DateTimeField(auto_now_add=True)
    enter code here

    def __str__(self):
        return '%s - %s' % (self.post, self.name)

表单.py

class CommentForm(ModelForm):
    class Meta:
        model = Comment
        fields = ('name', 'body')

视图.py

class HomePage(ListView):
    model = Post
    template_name = 'main/index.html' 
    context_object_name = 'posts1'

class BarbersPage(ListView):
    model = Post
    template_name = 'main/barbers.html' 
    context_object_name = 'posts'

网址.py

urlpatterns = [
    path('',views.HomePage.as_view(),name='index'),
    path('barbers/',views.BarbersPage.as_view(), name='barbers'),
  
]

理发师.html

{% for post in posts %}
          <img src="{{MEDIA_URL}}{{post.photo.url}}" width="800"  />

          <h3>
        {{ post.name_barber}} 
          </h3>
     <p>{{ post.description}}</p>



     <h3> Comments.. </h3>

    {% if not post.comments.all %}
    no comments yet...<a href = "#">Add one</a>

    {% else %}

        {% for comment in post.comments.all %}

    <strong>
        {{ comment.name }}
        {{ comment.add_date }}
    </strong>
        <p>{{comment.body }}</p>
<br>
        {% endfor %}
         
    {% endif %}           
        
{% endfor %}

您需要在帖子下方添加一个表单块,以便用户添加评论。

像这样的东西:

{% for post in posts %}
     <img src="{{MEDIA_URL}}{{post.photo.url}}" width="800"  />
          <h3>
        {{ post.name_barber}} 
          </h3>
     <p>{{ post.description}}</p>

     <h3> Comments.. </h3>

    {% if not post.comments.all %}
        no comments yet...<a href = "#">Add one</a>
    {% else %}
        {% for comment in post.comments.all %}
            <strong>
                {{ comment.name }}
                {{ comment.add_date }}
            </strong>
            <p>{{comment.body }}</p>
            <br>
        {% endfor %}         
    {% endif %}
    Add Comment:<br/>
    <form method="post" action="/AddComment">
        <input type="hidden" id="postid" value="{{post.id}}"/>
        <input type="text" id="newcomment" size="50"/><input type="submit" value="Submit"/>
    </form><br/>
{% endfor %}

您需要决定在哪里提交评论数据并更新表单中的操作属性。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM