diff --git a/src/news/__init__.py b/src/news/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/src/news/admin.py b/src/news/admin.py new file mode 100644 index 0000000000000000000000000000000000000000..7f39d2fe12544dbc56abffe0abb6766e05fd843d --- /dev/null +++ b/src/news/admin.py @@ -0,0 +1,5 @@ +from django.contrib import admin +from .models import Article + +admin.site.register(Article) +# Register your models here. diff --git a/src/news/apps.py b/src/news/apps.py new file mode 100644 index 0000000000000000000000000000000000000000..5a7b92d0f844e1bd89c73e7bba369b07298ae70a --- /dev/null +++ b/src/news/apps.py @@ -0,0 +1,5 @@ +from django.apps import AppConfig + + +class NewsConfig(AppConfig): + name = 'news' diff --git a/src/news/migrations/0001_initial.py b/src/news/migrations/0001_initial.py new file mode 100644 index 0000000000000000000000000000000000000000..3e3bf0cd6b30767f0b17a436e2c1eede7b9061a7 --- /dev/null +++ b/src/news/migrations/0001_initial.py @@ -0,0 +1,28 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.11.5 on 2017-11-28 19:55 +from __future__ import unicode_literals + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + initial = True + + dependencies = [ + ('account', '0002_auto_20171114_2144'), + ] + + operations = [ + migrations.CreateModel( + name='Article', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('title', models.CharField(max_length=200)), + ('text', models.TextField()), + ('date', models.DateTimeField()), + ('author', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='author', to='account.Profile')), + ], + ), + ] diff --git a/src/news/migrations/__init__.py b/src/news/migrations/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/src/news/models.py b/src/news/models.py new file mode 100644 index 0000000000000000000000000000000000000000..b30275b532f0d66b29072bbeae2f376938f6a0ec --- /dev/null +++ b/src/news/models.py @@ -0,0 +1,12 @@ +from django.db import models +from account.models import Profile + + +class Article(models.Model): + author = models.ForeignKey(Profile, related_name="author") + title = models.CharField(null=False, max_length=200) + text = models.TextField() + date = models.DateTimeField(auto_now_add=True) + + def __str__(self): + return self.title diff --git a/src/news/serializers.py b/src/news/serializers.py new file mode 100644 index 0000000000000000000000000000000000000000..be9febe5f131fcf1bdd2b4c5d330f7976d3e824a --- /dev/null +++ b/src/news/serializers.py @@ -0,0 +1,11 @@ +from news.models import Article +from rest_framework import serializers + + +class ArticleListSerializer(serializers.ModelSerializer): + class Meta: + model = Article + fields = [ + 'author', + 'title', + ] diff --git a/src/news/tests.py b/src/news/tests.py new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/src/news/urls.py b/src/news/urls.py new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/src/news/views.py b/src/news/views.py new file mode 100644 index 0000000000000000000000000000000000000000..c132c702a38a1b7f49f9450ab9cc87ace9289270 --- /dev/null +++ b/src/news/views.py @@ -0,0 +1,8 @@ +from rest_framework import generics +from models import Article +from news.serializer import ArticleListSerializer + + +class NewsListView(generics.ListAPIView): + qureryset = Article.objects.all() + serializer_class = ArticleListSerializer