Skip to content

Commit dfeb256

Browse files
committed
Added friends to the home page
1 parent 38c8bb3 commit dfeb256

File tree

3 files changed

+23
-3
lines changed

3 files changed

+23
-3
lines changed

home/templates/home/home.html

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,12 @@ <h2>Other People</h2>
2323
<h3>{{ user.username }}</h3>
2424
</a>
2525
{% endfor %}
26+
<h2>Friends</h2>
27+
{% for friend in friends %}
28+
<a href="{% url 'accounts:view_profile_with_pk' pk=user.pk %}">
29+
<h3>{{ friend.username }}</h3>
30+
</a>
31+
{% endfor %}
2632
</div>
2733
</div>
2834
{% endblock %}

home/urls.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
from django.conf.urls import url
22
from home.views import HomeView
3+
from . import views
34

45
urlpatterns = [
5-
url(r'^$', HomeView.as_view(), name='home')
6+
url(r'^$', HomeView.as_view(), name='home'),
7+
url(r'^connect/(?P<operation>.+)/(?P<pk>\d+)/$', views.change_friends, name='change_friends')
68
]

home/views.py

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
from django.contrib.auth.models import User
44

55
from home.forms import HomeForm
6-
from home.models import Post
6+
from home.models import Post, Friend
77

88

99
class HomeView(TemplateView):
@@ -13,8 +13,12 @@ def get(self, request):
1313
form = HomeForm()
1414
posts = Post.objects.all().order_by('-created')
1515
users = User.objects.exclude(id=request.user.id)
16+
friend = Friend.objects.get(current_user=request.user)
17+
friends = friend.users.all()
1618

17-
args = {'form': form, 'posts': posts, 'users': users}
19+
args = {
20+
'form': form, 'posts': posts, 'users': users, 'friends': friends
21+
}
1822
return render(request, self.template_name, args)
1923

2024
def post(self, request):
@@ -30,3 +34,11 @@ def post(self, request):
3034

3135
args = {'form': form, 'text': text}
3236
return render(request, self.template_name, args)
37+
38+
def change_friends(request, operation, pk):
39+
friend = User.objects.get(pk=pk)
40+
if operation == 'add':
41+
Friend.make_friend(request.user, friend)
42+
elif operation == 'remove':
43+
Friend.lose_friend(request.user, friend)
44+
return redirect('home:home')

0 commit comments

Comments
 (0)