hyeonga_code

파이선 웹구축_장고_23_댓글 등록 본문

Python_Django

파이선 웹구축_장고_23_댓글 등록

hyeonga 2023. 6. 15. 05:59
반응형

- 댓글 등록

1. 등록 기능 작성

'detail.html'

=====

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<h1><b>{{ b.subject }}</b></h1>
<h4>written by <b>{{b.writer}}</b></h4>
 
<textarea cols="60" rows="6" disabled>{{ b.content }}</textarea><br><br>
 
<a href="{% url 'index' %}"><button></button></a>
 
<hr>
    <form method='post' action = "{% url 'creply' b.id %}">
        #_ redirect를 위해서라도 인자가 필요함
        {% csrf_token %}
        <input name="rep" type='text' size="7">
        <input name='com' type='text' size='30'>
        <button>댓글 등록</button>
    </form>
<hr>
{% for i in rset %}
    <b>{{ i.replyer }}</b> {{ i.comment }} <br>
{% empty %}
    <b>댓글</b>을 달아주세요
{% endfor %}
cs

 

 

2. 경로 설정

'urls.py'

=====

1
2
3
4
5
6
7
8
9
from django.urls import path
from . import views
 
urlpatterns = [
    path('index/', views.index, name="index"),
    path('detail/<bpk>', views.detail, name="detail"),
    path('delete/<bpk>', views.delete, name="delete"),
    path('creply/<bpk>', views.creply, name='creply'),
]
cs

 

 

3. 함수 설정

'views.py'

=====

1
2
3
4
5
6
def creply(request, bpk):
    b = Board.objects.get(id=bpk)
    r = request.POST.get('rep')
    c = request.POST.get('com')
    Reply(board=b, replyer=r, comment=c).save()
    return redirect("detail",bpk)
cs

 

 

반응형