diff --git a/api/community/serializers.py b/api/community/serializers.py
index 5c5769982..a78a99591 100644
--- a/api/community/serializers.py
+++ b/api/community/serializers.py
@@ -4,9 +4,13 @@
class GroupSerializer(serializers.ModelSerializer):
+ posts = PostSerializer(many=True)
+
class Meta:
model = Group
- fields = '__all__'
+ depth = 1
+ fields = ['id', 'title', 'description', 'location', 'posts', 'members']
+
class EventSerializer(serializers.ModelSerializer):
@@ -27,6 +31,7 @@ class Meta:
fields = ['id', 'title', 'description', 'posts']
+
class HashtagSerializer(serializers.ModelSerializer):
posts = PostSerializer(many=True)
@@ -36,6 +41,7 @@ class Meta:
fields = ['id', 'title', 'description', 'posts']
+
class MediaSerializer(serializers.ModelSerializer):
hashtag = serializers.CharField()
group = serializers.CharField()
diff --git a/api/forum/fixtures/forum.json b/api/forum/fixtures/forum.json
index 4410c2f3b..288a2e97b 100644
--- a/api/forum/fixtures/forum.json
+++ b/api/forum/fixtures/forum.json
@@ -38,7 +38,7 @@
"likes": 0,
"author": 3,
"parent": [],
- "group": 1
+ "group": 3
}
},
{
diff --git a/api/forum/models.py b/api/forum/models.py
index 4b00c6816..989c58867 100644
--- a/api/forum/models.py
+++ b/api/forum/models.py
@@ -5,7 +5,7 @@
class Post(models.Model):
parent = models.ManyToManyField(
- 'self', related_name='comments', null=True, blank=True)
+ 'self', related_name='comments', symmetrical=False, null=True, blank=True)
post_type = models.CharField(max_length=200, null=True, blank=True)
title = models.CharField(max_length=200)
time = models.DateTimeField(auto_now=True)
@@ -14,7 +14,7 @@ class Post(models.Model):
author = models.ForeignKey(Profile,
on_delete=models.CASCADE, related_name='posts', null=True)
group = models.ForeignKey(
- Group, on_delete=models.CASCADE, related_name='posts', null=True)
+ Group, on_delete=models.CASCADE, related_name='posts', null=True, blank=True)
hashtags = models.ManyToManyField(
'community.hashtag', related_name='posts', null=True, blank=True)
diff --git a/api/forum/serializers.py b/api/forum/serializers.py
index a110682fc..e8f36b45d 100644
--- a/api/forum/serializers.py
+++ b/api/forum/serializers.py
@@ -4,7 +4,10 @@
class PostSerializer(serializers.ModelSerializer):
- # author = ProfileSerializer()
+ author = ProfileSerializer()
+
class Meta:
model = Post
- fields = '__all__'
+ depth = 2
+ fields = ['id', 'parent', 'comments', 'post_type', 'title',
+ 'time', 'body', 'likes', 'author', 'group', 'hashtags', 'topics']
diff --git a/api/forum/views.py b/api/forum/views.py
index c3d401509..fda23332b 100644
--- a/api/forum/views.py
+++ b/api/forum/views.py
@@ -4,17 +4,15 @@
from .serializers import PostSerializer
-
class PostList(generics.ListCreateAPIView):
- queryset = Post.objects.all()
+ queryset = Post.objects.all().order_by('time')
serializer_class = PostSerializer
permission_classes = (permissions.IsAuthenticated,)
class PostDetail(generics.RetrieveUpdateDestroyAPIView):
serializer_class = PostSerializer
+
def get_queryset(self):
user = self.request.user
return Post.objects.filter(author=user.id)
-
-
diff --git a/client/src/App.js b/client/src/App.js
index d8c8e103c..1a2f5a238 100644
--- a/client/src/App.js
+++ b/client/src/App.js
@@ -118,10 +118,10 @@ class App extends Component {
)}
>
{body}
- {person.userFirstName} {userLastInitial} + {`${person.first_name} ${person.last_name[0].toUpperCase()}`}
- {props.comments} - {" Comments"} + {`${props.comments.length} ${props.comments.length === 1 ? " Comment" : " Comments"}`}