Skip to content

Commit

Permalink
create chat app, add chat and message models with migration
Browse files Browse the repository at this point in the history
  • Loading branch information
kolyanu4 committed Dec 17, 2016
1 parent ef9db5c commit 8af2b00
Show file tree
Hide file tree
Showing 9 changed files with 95 additions and 0 deletions.
1 change: 1 addition & 0 deletions config/settings.py
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,7 @@

LOCAL_APPS = (
'django_aiohttp_websockets.users',
'django_aiohttp_websockets.chat',
)

INSTALLED_APPS = DJANGO_APPS + THIRD_PARTY_APPS + LOCAL_APPS
Expand Down
Empty file.
13 changes: 13 additions & 0 deletions django_aiohttp_websockets/chat/admin.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
from django.contrib import admin

from django_aiohttp_websockets.chat.models import ChatMessage, ChatRoom


@admin.register(ChatRoom)
class ChatRoomAdmin(admin.ModelAdmin):
pass


@admin.register(ChatMessage)
class ChatMessageAdmin(admin.ModelAdmin):
pass
5 changes: 5 additions & 0 deletions django_aiohttp_websockets/chat/apps.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
from django.apps import AppConfig


class ChatConfig(AppConfig):
name = 'django_aiohttp_websockets.chat'
46 changes: 46 additions & 0 deletions django_aiohttp_websockets/chat/migrations/0001_initial.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
# -*- coding: utf-8 -*-
# Generated by Django 1.10.1 on 2016-12-17 17:32
from __future__ import unicode_literals

from django.conf import settings
from django.db import migrations, models
import django.db.models.deletion
import uuid


class Migration(migrations.Migration):

initial = True

dependencies = [
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
]

operations = [
migrations.CreateModel(
name='ChatMessage',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('date_created', models.DateTimeField(auto_now_add=True, verbose_name='Created')),
('text', models.TextField(verbose_name='Message')),
],
),
migrations.CreateModel(
name='ChatRoom',
fields=[
('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False, verbose_name='Room ID')),
('date_created', models.DateTimeField(auto_now_add=True, verbose_name='Created')),
('users', models.ManyToManyField(to=settings.AUTH_USER_MODEL, verbose_name='User')),
],
),
migrations.AddField(
model_name='chatmessage',
name='room',
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='messages', to='chat.ChatRoom', verbose_name='Chat room ID'),
),
migrations.AddField(
model_name='chatmessage',
name='user',
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='User'),
),
]
Empty file.
24 changes: 24 additions & 0 deletions django_aiohttp_websockets/chat/models.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
import uuid

from django.db import models
from django.conf import settings
from django.utils.translation import ugettext_lazy as _


class ChatRoom(models.Model):
id = models.UUIDField(verbose_name=_('Room ID'), primary_key=True, default=uuid.uuid4, editable=False)
date_created = models.DateTimeField(verbose_name=_('Created'), auto_now_add=True)
users = models.ManyToManyField(settings.AUTH_USER_MODEL, verbose_name=_('User'))

def __str__(self):
return 'Room {}'.format(self.id)


class ChatMessage(models.Model):
user = models.ForeignKey(settings.AUTH_USER_MODEL, verbose_name=_('User'))
room = models.ForeignKey('chat.ChatRoom', verbose_name=_('Chat room ID'), related_name='messages')
date_created = models.DateTimeField(verbose_name=_('Created'), auto_now_add=True)
text = models.TextField(verbose_name=_('Message'))

def __str__(self):
return 'Message from {}'.format(self.user)
3 changes: 3 additions & 0 deletions django_aiohttp_websockets/chat/tests.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
from django.test import TestCase

# Create your tests here.
3 changes: 3 additions & 0 deletions django_aiohttp_websockets/chat/views.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
from django.shortcuts import render

# Create your views here.

0 comments on commit 8af2b00

Please sign in to comment.