rowanlupton / pylodon

Flask-based ActivityPub server
MIT License
97 stars 14 forks source link

Abort a request if the user is not found #95

Open AstraLuma opened 6 years ago

AstraLuma commented 6 years ago

This is probably totally the wrong thing to do. But it seems better than throwing 500's?

rowanlupton commented 6 years ago

Ooh, good point. I'm feeling torn right now about whether the find_user function should do the abort, or whether everything implementing find_user should try catch -- I'm not super fond of side effects where I can avoid them, y'know?

I think that I want to stick with find_user always returning a user-type-thing, whether that's the user object or None (or potentially some other option), but I'm definitely open to changing my mind on that

AstraLuma commented 6 years ago

Well, this was a quick hack, and I can certainly see cases where you want to look up a user and handle it differently.

AstraLuma commented 6 years ago

I will say that some ORMs handle it by raising an exception (eg, Django's ORM raises an ObjectDoesNotExist)

rowanlupton commented 6 years ago

yeah i hear you! i think that an exception is probably the way to go? i'll mull it over some more