[Westagram]:投稿/コメントの削除
課題
コード#コード#
urls.py
from django.urls import path
from postings.views import PostingView, PostingUpdateView
urlpatterns = [
path('post', PostingView.as_view()),
path('delete/<int:id>',PostingView.as_view()),
path('post/<int:id>' ,PostingUpdateView.as_view())
]
from django.urls import path
from comments.views import (
CommentsGetView,
CommentsPostView,
)
urlpatterns = [
path('post', CommentsPostView.as_view()),
path('get/<int:id>', CommentsGetView.as_view()), #id는 post의 id 기준으로 잡아야 함
path('delete/<int:id>', CommentsGetView.as_view()),
]
urlを設定するとdeleteの後ろにがあります.
問題のbodyに関連付けられていないものを削除
IDの削除を何回要求すればいいですか.
後ろにidが付いています.
これがrest apiですか?に表示されます.(これもよくわからないので勉強します)
views.py+アクセサリー
@login_decorator
def delete(self, request, id) :
try :
posting_id = id
if not Posting.objects.filter(id=posting_id).exists() :
return JsonResponse({'message':'Posting is not existed'}, status=400)
except KeyError :
return JsonResponse({'message':'KEY_ERROR'}, status=400)
Posting.objects.filter(id=posting_id).delete()
return JsonResponse({'message':'delete ok'}, status=200)
@login_decorator
def delete(self, request, id) :
try :
comment_id = id
if not Comment.objects.filter(id=comment_id).exists() :
return JsonResponse({'message':'삭제할 수 없는 댓글입니다'}, status=400)
except KeyError :
return JsonResponse({'message':'KEY_ERROR'})
Comment.objects.filter(id=comment_id).delete()
return JsonResponse({'message':'comment delete'}, status=200)
ログインが必要なので、まずlogin decorator関数を実行します.
また、装飾器のパラメータはrest api設定に関連付けられている.
(次の内容は私の考えで、詩の言うとおりに反論します)
一般的なクエリーと登録にはself、requestしか必要ありませんが、変更と削除
特定のオブジェクトを含める必要があります.
例えば、何を修正しますか?何を削除しますか?
だから観点はオブジェクトの変数をpyにインポートする方法です.ここでidです.
def login_decorator(func) :
def wrapper(self, request, *args, **kwargs) :
装飾器を起動するとself、request、*args、**kwargsの4つの変数をキャプチャしました.
self、requestのみを設定する場合は、deleteメッサーで設定した変数idを
レコーダから受信できないため、エラーが発生しました.
従って、アクセサリーにargs、kwargsを追加パラメータとして宣言する.
いずれにしても、削除した場合、事前に削除した場合は、メッセージを送信するか、削除して終了します.
Reference
この問題について([Westagram]:投稿/コメントの削除), 我々は、より多くの情報をここで見つけました
https://velog.io/@kyleee/Westagram-게시글댓글-삭제
テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol
from django.urls import path
from postings.views import PostingView, PostingUpdateView
urlpatterns = [
path('post', PostingView.as_view()),
path('delete/<int:id>',PostingView.as_view()),
path('post/<int:id>' ,PostingUpdateView.as_view())
]
from django.urls import path
from comments.views import (
CommentsGetView,
CommentsPostView,
)
urlpatterns = [
path('post', CommentsPostView.as_view()),
path('get/<int:id>', CommentsGetView.as_view()), #id는 post의 id 기준으로 잡아야 함
path('delete/<int:id>', CommentsGetView.as_view()),
]
問題のbodyに関連付けられていないものを削除
IDの削除を何回要求すればいいですか.
後ろにidが付いています.
これがrest apiですか?に表示されます.(これもよくわからないので勉強します)
views.py+アクセサリー
@login_decorator
def delete(self, request, id) :
try :
posting_id = id
if not Posting.objects.filter(id=posting_id).exists() :
return JsonResponse({'message':'Posting is not existed'}, status=400)
except KeyError :
return JsonResponse({'message':'KEY_ERROR'}, status=400)
Posting.objects.filter(id=posting_id).delete()
return JsonResponse({'message':'delete ok'}, status=200)
@login_decorator
def delete(self, request, id) :
try :
comment_id = id
if not Comment.objects.filter(id=comment_id).exists() :
return JsonResponse({'message':'삭제할 수 없는 댓글입니다'}, status=400)
except KeyError :
return JsonResponse({'message':'KEY_ERROR'})
Comment.objects.filter(id=comment_id).delete()
return JsonResponse({'message':'comment delete'}, status=200)
ログインが必要なので、まずlogin decorator関数を実行します.また、装飾器のパラメータはrest api設定に関連付けられている.
(次の内容は私の考えで、詩の言うとおりに反論します)
一般的なクエリーと登録にはself、requestしか必要ありませんが、変更と削除
特定のオブジェクトを含める必要があります.
例えば、何を修正しますか?何を削除しますか?
だから観点はオブジェクトの変数をpyにインポートする方法です.ここでidです.
def login_decorator(func) :
def wrapper(self, request, *args, **kwargs) :
装飾器を起動するとself、request、*args、**kwargsの4つの変数をキャプチャしました.self、requestのみを設定する場合は、deleteメッサーで設定した変数idを
レコーダから受信できないため、エラーが発生しました.
従って、アクセサリーにargs、kwargsを追加パラメータとして宣言する.
いずれにしても、削除した場合、事前に削除した場合は、メッセージを送信するか、削除して終了します.
Reference
この問題について([Westagram]:投稿/コメントの削除), 我々は、より多くの情報をここで見つけました https://velog.io/@kyleee/Westagram-게시글댓글-삭제テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol