inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

파이썬 사용자를 위한 웹개발 입문 A to Z Django + Bootstrap

안녕하십니까 작성한 포스트를 삭제하는 기능은 없는건가요?

301

조한림

작성한 질문수 1

0

2회차 듣고 있는데 아무생각없이 삭제하려고 보니까 삭제기능은 없는데 만약 구현한다면 하는 생각으로

urls.py에 url 패턴에

path('<int:pk>/delete/',  views.PostDelete.as_view())

라고 했구요

models.py에 

def get_delete_url(self):

    return f'{self.pk}/delete/' 로 정의했고

html post_detail에 {{ object.get_delete_url }}로 버튼 만들었고

views.py에

class PostDelete(LoginRequiredMixin, DeleteView):

    model = Post

    login_url  ='/login/'

    succress_url = '/' 이렇게 코딩했는데 delelte_confirm.html을 지정을 안해줫다고 나오는데 이 컨펌을 댓글 처럼 delete_confirm.html대신에 

댓글삭제를 modal로 컨펌해서 지우고 싶은데 함수형 말고 클래스형 뷰로 설명을 좀 해주실수 있나요

bootstrap python django

답변 3

1

조한림

modal 에서 form action에 get_delete_url 주고 method 를 post로 보내니 그냥 지워지는 군요 ㅎㅎ...

0

이상진

아 해결했습니다!!..ㅋㅋ 자문자답이 되었네요. 그러나 여전히 왜 안됐었는지... 답은 못찾았습니다..

# views.py
def
delete_post(request, pk):
model = Post.objects.get(pk=pk)
model.delete()
return redirect('/blog/')

#url.py
app_name = 'blog'
urlpatterns = [
path('delete_post/<int:pk>',views.delete_post, name='delete_post'),
]

# models.py
def get_delete_url(self):
return '/delete_post/{self.pk}/'

# post_detail.html
<a href="{% url 'blog:delete_post' pk=post.pk %}">delete</a>

0

이상진

안녕하세요, 

알려주신대로 시도했는데 아래와같은 오류가 나는데 혹시 해결방법이 있을까요? 

[ERROR 메세지]

[09/Jun/2020 17:26:23] "POST /blog/27/ HTTP/1.1" 405 0 

# urls.py
urlpatterns = [

path('blog/<int:pk>/delete/', views.PostDelete.as_view()),
]

# models.py
def
get_delete_url(self):
return '/{self.pk}/delete/'

# post_detail.html

<form method="post" action="{{ get_delete_url }}">{% csrf_token %}
<button type="submit" class="btn btn-primary">Confirm</button>
</form>

# views.py
class PostDelete(LoginRequiredMixin, DeleteView):
model = Post
login_url =
'/login/'
success_url = '/'

[09/Jun/2020 17:26:23] "POST /blog/27/ HTTP/1.1" 405 0

후속 강의

0

390

1

완성했습니다. 감사합니다

0

321

2

오늘 vps 에 domain 을 지정해주고 아직 활성화되지 않았는데

0

299

1

test 결과 두 가지 error 가 발생했습니다. 뭐가 잘못된 건지 도저히 모르겠습니다.

0

421

1

accounts/login 이 존재하지 않는다고 나옵니다

0

269

2

코드 질문입니다

0

248

1

포스트에 markdown을 사용해서 이미지를 추가할때

0

311

1

New Post 관련 질문드립니다.

0

179

1

이번 영상부터 각 포스트에 프리뷰 사진이 달라지셔서 질문 드립니다.

0

334

1

base 작업한 후 Category가 블로그 하단으로 내려갔습니다.

0

254

1

혹시 소스코드 전체가 담긴 주소를 좀 알 수 있을까요?

0

265

1

9분 경 테스트에서 Assretion Error가 발생합니다.

0

235

1

파이참 초기 설치 후 설정 관련해서 git에 항상 add되는 옵션을 체크했습니다.

0

345

3

F12를 눌러 console 창에서 오류를 확인할때 몇번째 줄인지 나오지 않습니다.

0

396

1

post view도 delete하려는데 막혀서 ㅠㅠ

0

197

1

"GET / HTTP/1.1" 400 143 그리고 "GET / HTTP/1.1" 404 2031

0

3304

3

연결이 안됩니다

0

506

8

서버에 연결하고 나면 그 후에 Cmder가 작동이 안되요

0

378

2

서버에 배포후 어드민계정

0

589

2

안녕하세요! 실서버에 올린 sqlite3의 데이터를 직접 확인하려면 어찌하나요?

0

2039

3

gitignore안먹히는현상

0

292

1

cmder 종료시 서버도 같이 종료됩니다.

0

220

1

' python manage.py makemigration blog ' 명령어 에러

0

588

2

python manage.py makemigrations 를 했을 때 오류가 납니다.

0

560

2