@@ -29,16 +29,15 @@ class Query(graphene.ObjectType):
29
29
all_posts = graphene .List (PostType )
30
30
all_tags = graphene .List (TagType )
31
31
all_authors = graphene .List (AuthorType )
32
+ latest_posts = graphene .List (PostType )
32
33
author_by_username = graphene .Field (AuthorType , username = graphene .String ())
33
34
post_by_slug = graphene .Field (PostType , slug = graphene .String ())
34
35
posts_by_author = graphene .List (PostType , username = graphene .String ())
35
36
posts_by_tag = graphene .List (PostType , tag = graphene .String ())
36
37
posts_by_id = graphene .List (PostType , id = graphene .ID ())
37
38
38
- def resolve_all_posts (root , info ):
39
- return (
40
- models .Post .objects .prefetch_related ("tags" ).select_related ("author" ).all ()
41
- )
39
+ def resolve_all_posts (root , info , order_by = None ):
40
+ return models .Post .objects .prefetch_related ("tags" ).select_related ("author" ).all ()
42
41
43
42
def resolve_all_tags (root , info ):
44
43
return models .Tag .objects .all ()
@@ -75,5 +74,8 @@ def resolve_posts_by_tag(root, info, tag):
75
74
def resolve_posts_by_id (root , info , id ):
76
75
return models .Post .objects .filter (id = id )
77
76
77
+ def resolve_latest_posts (root , info ):
78
+ return models .Post .objects .prefetch_related ("tags" ).select_related ("author" ).order_by ("-id" )[:5 ]
79
+
78
80
79
81
schema = graphene .Schema (query = Query )
0 commit comments