How to create a user to user message system using Django?

programmr picture programmr · Sep 21, 2015 · Viewed 18.3k times · Source

I am trying to create a private messaging system using Django. It doesn't have to be like a live chat, just have an inbox and be able to respond, simple thing like that. So far, from research I have found two things: django.contrib.messages which doesn't seem to be for private messages, but rather messages from the system to a user. Then I also found django-postman which seems to be what I'm looking for, but there seems to be little documentation on how to use it. So has anybody used anything else to accomplish this? Or am I wrong about django.contrib.messaging? Or is there good documentation on django-postman that I'm missing?

Answer

ancho picture ancho · Sep 21, 2015

You can create your own custom message app.

Models for Message like app : Class Message():

Class Message(models.Model):
     sender = models.ForeignKey(User, related_name="sender")
     reciever = # almost same as above field, just change the related-name
     msg_content = # text field 
     created_at = # time field

Create a form for this model, use model form .

filter "Inbox" queries in views.py by

Message.objects.filter(reciever=request.user)

filter "Sent Box" queries in views.py by

Message.objects.filter(sender = request.user)