Added templates and html to the announcements app

parent 1f97f1bd
from django.urls import path from django.urls import path
from .views import announcements from .views import announcements, details
urlpatterns = [ urlpatterns = [
path('', announcements, name='announcements'), path('', announcements, name='announcements'),
path('announcements/<int:announcement_id>/details/', details, name='details')
] ]
app_name = "announcements" app_name = "announcements"
...@@ -7,26 +7,29 @@ def index(request): ...@@ -7,26 +7,29 @@ def index(request):
return HttpResponse('This is the Announcement Board!') return HttpResponse('This is the Announcement Board!')
def announcements(request): def announcements(request):
all_announcements = models.Announcement.objects.all() all_announcements = models.Announcement.objects.order_by("pub_date")
all_reactions = models.Reaction.objects.all() context = {
"all_announcements": all_announcements
}
return render(request, 'announcements/announcements.html', context)
final_output = '' def details(request, announcement_id):
announcement_details = models.Announcement.objects.get(pk=announcement_id)
for i in all_announcements: reactions = models.Reaction.objects.filter(announcement=announcement_details)
title = i.announcement_title like = 0
body = i.announcement_body love = 0
date = str(i.pub_date) angry = 0
last_name = i.author.last_name for reaction in reactions:
first_name = i.author.first_name if reaction.reaction_name=="Like":
like_tally = str(Reaction.objects.get(reaction_name='Like', announcement=i).get_tally()) like = reaction.tally
love_tally = str(Reaction.objects.get(reaction_name='Love', announcement=i).get_tally()) elif reaction.reaction_name=="Love":
angry_tally = str(Reaction.objects.get(reaction_name='Angry', announcement=i).get_tally()) love = reaction.tally
else:
output = (title+' by '+first_name+' '+last_name+' dated '+date+':<br>' angry = reaction.tally
+body+'<br>' context = {
+'Like: '+like_tally+'<br>' "announcement_details": announcement_details,
+'Love: '+love_tally+'<br>' "like": like,
+'Angry: '+angry_tally) "love": love,
"angry": angry,
final_output += output +'<br><br>' }
return HttpResponse('<h1>ANNOUNCEMENTS: </h1>' + final_output) return render(request, "announcements/details.html", context)
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment