File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 99from news .permissions import IsNewsCreatorOrReadOnly
1010from news .serializers import NewsListSerializer , NewsDetailSerializer
1111from news .mixins import NewsQuerysetMixin
12+ from projects .models import Project
1213
1314
1415class NewsList (NewsQuerysetMixin , generics .ListCreateAPIView ):
1516 serializer_class = NewsListSerializer
1617 permission_classes = [IsNewsCreatorOrReadOnly ]
1718 pagination_class = NewsPagination
1819
20+ def post (self , request , * args , ** kwargs ):
21+ if kwargs .get ("project_pk" ):
22+ project = Project .objects .get (pk = kwargs ["project_pk" ])
23+ news = News .objects .add_news (project , ** request .data )
24+ return Response (
25+ NewsDetailSerializer (news ).data , status = status .HTTP_201_CREATED
26+ )
27+ else :
28+ # creating partner program news, not implemented yet
29+ raise NotImplementedError ()
30+
1931 def get (self , request , * args , ** kwargs ):
2032 news = self .paginate_queryset (self .get_queryset ())
2133 context = {"user" : request .user }
You can’t perform that action at this time.
0 commit comments