Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
M
midterm_CtrlF
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Fritzie Dianne Del Pilar
midterm_CtrlF
Commits
6f45c51c
Commit
6f45c51c
authored
May 15, 2023
by
Fritzie Dianne Del Pilar
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Edited models.py
parent
ded6f864
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
49 additions
and
10 deletions
+49
-10
models.py
widget_CtrlF/announcement_board/models.py
+49
-10
No files found.
widget_CtrlF/announcement_board/models.py
View file @
6f45c51c
from
django.db
import
models
from
django.utils
import
timezone
from
dashboard.models
import
WidgetUser
Like
=
'Like'
Love
=
'Love'
Angry
=
'Angry'
REACTIONS
=
((
Like
,
'Like'
),
(
Love
,
'Love'
),
(
Angry
,
'Angry'
))
from
django.urls
import
reverse
class
Announcement
(
models
.
Model
):
...
...
@@ -16,14 +10,59 @@ class Announcement(models.Model):
author
=
models
.
ForeignKey
(
WidgetUser
,
on_delete
=
models
.
CASCADE
)
pub_datetime
=
models
.
DateTimeField
(
default
=
timezone
.
now
,
null
=
True
,
blank
=
True
)
def
__str__
(
self
):
return
self
.
title
def
date_format
(
self
):
return
'{}'
.
format
(
self
.
pub_datetime
.
strftime
(
"
%
m/
%
d/
%
Y"
))
def
time_format
(
self
):
return
'{}'
.
format
(
self
.
pub_datetime
.
strftime
(
"
%
H:
%
M
%
p"
))
def
getLike
(
self
):
try
:
return
'{}'
.
format
(
Reaction
.
objects
.
get
(
name
=
"Like"
,
announcement
=
self
)
.
tally
)
except
:
return
'0'
def
getLove
(
self
):
try
:
return
'{}'
.
format
(
Reaction
.
objects
.
get
(
name
=
"Love"
,
announcement
=
self
)
.
tally
)
except
:
return
'0'
def
getAngry
(
self
):
try
:
return
'{}'
.
format
(
Reaction
.
objects
.
get
(
name
=
"Angry"
,
announcement
=
self
)
.
tally
)
except
:
return
'0'
def
get_absolute_url
(
self
):
return
reverse
(
'announcements:announcement-details'
,
kwargs
=
{
'pk'
:
self
.
pk
},
)
def
__str__
(
self
):
return
'{} by {} {} published {}, {}: {}'
.
format
(
self
.
title
,
self
.
author
.
first_name
,
self
.
author
.
last_name
,
self
.
pub_datetime
.
strftime
(
"
%
m/
%
d/
%
Y"
),
self
.
pub_datetime
.
strftime
(
"
%
H:
%
M
%
p"
),
self
.
body
,
)
class
Reaction
(
models
.
Model
):
Like
=
'Like'
Love
=
'Love'
Angry
=
'Angry'
REACTIONS
=
[
((
Like
,
'Like'
),
(
Love
,
'Love'
),
(
Angry
,
'Angry'
))
]
name
=
models
.
CharField
(
max_length
=
10
,
choices
=
REACTIONS
,
default
=
Like
)
tally
=
models
.
IntegerField
(
default
=
0
)
announcement
=
models
.
ForeignKey
(
Announcement
,
on_delete
=
models
.
CASCADE
)
def
__str__
(
self
):
return
self
.
name
\ No newline at end of file
return
'{} reactions for {}'
.
format
(
self
.
name
,
self
.
announcement
)
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment