user slug as rater in shout ratings
This commit is contained in:
parent
7452c66598
commit
5341bb80a5
|
@ -49,7 +49,9 @@ class ShoutRatingStorage:
|
|||
|
||||
@staticmethod
|
||||
def init(session):
|
||||
ShoutRatingStorage.ratings = session.query(ShoutRating).all()
|
||||
#TODO use user slug as rater
|
||||
ShoutRatingStorage.ratings = session.query(ShoutRating.shout, ShoutRating.value, User.slug.label("rater")).\
|
||||
join(User).all()
|
||||
|
||||
@staticmethod
|
||||
async def get_total_rating(shout_slug):
|
||||
|
|
|
@ -297,7 +297,8 @@ async def update_shout(_, info, input):
|
|||
@login_required
|
||||
async def rate_shout(_, info, slug, value):
|
||||
auth = info.context["request"].auth
|
||||
user_id = auth.user_id
|
||||
user = info.context["request"].user
|
||||
user_id = user.id
|
||||
|
||||
with local_session() as session:
|
||||
rating = session.query(ShoutRating).\
|
||||
|
@ -313,7 +314,13 @@ async def rate_shout(_, info, slug, value):
|
|||
value = value
|
||||
)
|
||||
|
||||
await ShoutRatingStorage.update_rating(rating)
|
||||
rating_dict = {
|
||||
"shout" : shout,
|
||||
"value" : value,
|
||||
"rater" : user.slug
|
||||
}
|
||||
|
||||
await ShoutRatingStorage.update_rating(rating_dict)
|
||||
|
||||
return {"error" : ""}
|
||||
|
||||
|
|
|
@ -218,6 +218,11 @@ type Rating {
|
|||
value: Int!
|
||||
}
|
||||
|
||||
type ShoutRating {
|
||||
rater: String!
|
||||
value: Int!
|
||||
}
|
||||
|
||||
type Notification {
|
||||
kind: String! # unique primary key
|
||||
template: String!
|
||||
|
@ -302,7 +307,7 @@ type Shout {
|
|||
body: String!
|
||||
createdAt: DateTime!
|
||||
authors: [User!]!
|
||||
ratings: [Rating]
|
||||
ratings: [ShoutRating]
|
||||
visibleFor: [User]
|
||||
community: Int
|
||||
cover: String
|
||||
|
|
Loading…
Reference in New Issue
Block a user