From 50ba30b7ba06183de252fd74044ec756c442c10f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Felipe=20Mart=C3=ADn?= Date: Thu, 9 Apr 2015 15:35:38 +0000 Subject: [PATCH] Base FAQ app --- shelfzilla/apps/faq/__init__.py | 0 shelfzilla/apps/faq/admin.py | 17 ++++++++++ .../apps/faq/migrations/0001_initial.py | 34 +++++++++++++++++++ .../0002_translatedquestion_language.py | 21 ++++++++++++ shelfzilla/apps/faq/migrations/__init__.py | 0 shelfzilla/apps/faq/models.py | 16 +++++++++ shelfzilla/apps/faq/tests.py | 3 ++ shelfzilla/apps/faq/views.py | 3 ++ shelfzilla/settings/base.py | 1 + 9 files changed, 95 insertions(+) create mode 100644 shelfzilla/apps/faq/__init__.py create mode 100644 shelfzilla/apps/faq/admin.py create mode 100644 shelfzilla/apps/faq/migrations/0001_initial.py create mode 100644 shelfzilla/apps/faq/migrations/0002_translatedquestion_language.py create mode 100644 shelfzilla/apps/faq/migrations/__init__.py create mode 100644 shelfzilla/apps/faq/models.py create mode 100644 shelfzilla/apps/faq/tests.py create mode 100644 shelfzilla/apps/faq/views.py diff --git a/shelfzilla/apps/faq/__init__.py b/shelfzilla/apps/faq/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/shelfzilla/apps/faq/admin.py b/shelfzilla/apps/faq/admin.py new file mode 100644 index 0000000..0fb8403 --- /dev/null +++ b/shelfzilla/apps/faq/admin.py @@ -0,0 +1,17 @@ +# coding: utf-8 + +# django +from django.contrib import admin + +# app +from .models import Question, TranslatedQuestion + + +class TranslatedQuestionInline(admin.TabularInline): + model = TranslatedQuestion + +class QuestionAdmin(admin.ModelAdmin): + inlines = (TranslatedQuestionInline, ) + + +admin.site.register(Question, QuestionAdmin) diff --git a/shelfzilla/apps/faq/migrations/0001_initial.py b/shelfzilla/apps/faq/migrations/0001_initial.py new file mode 100644 index 0000000..5b6d588 --- /dev/null +++ b/shelfzilla/apps/faq/migrations/0001_initial.py @@ -0,0 +1,34 @@ +# -*- coding: utf-8 -*- +from __future__ import unicode_literals + +from django.db import models, migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ] + + operations = [ + migrations.CreateModel( + name='Question', + fields=[ + ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ], + options={ + }, + bases=(models.Model,), + ), + migrations.CreateModel( + name='TranslatedQuestion', + fields=[ + ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ('title', models.CharField(max_length=256)), + ('answer', models.TextField()), + ('question', models.ForeignKey(to='faq.Question')), + ], + options={ + }, + bases=(models.Model,), + ), + ] diff --git a/shelfzilla/apps/faq/migrations/0002_translatedquestion_language.py b/shelfzilla/apps/faq/migrations/0002_translatedquestion_language.py new file mode 100644 index 0000000..180a220 --- /dev/null +++ b/shelfzilla/apps/faq/migrations/0002_translatedquestion_language.py @@ -0,0 +1,21 @@ +# -*- coding: utf-8 -*- +from __future__ import unicode_literals + +from django.db import models, migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('manga', '0001_initial'), + ('faq', '0001_initial'), + ] + + operations = [ + migrations.AddField( + model_name='translatedquestion', + name='language', + field=models.ForeignKey(default=1, to='manga.Language'), + preserve_default=False, + ), + ] diff --git a/shelfzilla/apps/faq/migrations/__init__.py b/shelfzilla/apps/faq/migrations/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/shelfzilla/apps/faq/models.py b/shelfzilla/apps/faq/models.py new file mode 100644 index 0000000..f528047 --- /dev/null +++ b/shelfzilla/apps/faq/models.py @@ -0,0 +1,16 @@ +from django.db import models + +# Create your models here. +class Question(models.Model): + def __unicode__(self): + return self.translations.get(language__code='es').title + + +class TranslatedQuestion(models.Model): + question = models.ForeignKey(Question, related_name='translations') + language = models.ForeignKey('manga.Language') + title = models.CharField(max_length=256) + answer = models.TextField() + + def __unicode__(self): + return self.title diff --git a/shelfzilla/apps/faq/tests.py b/shelfzilla/apps/faq/tests.py new file mode 100644 index 0000000..7ce503c --- /dev/null +++ b/shelfzilla/apps/faq/tests.py @@ -0,0 +1,3 @@ +from django.test import TestCase + +# Create your tests here. diff --git a/shelfzilla/apps/faq/views.py b/shelfzilla/apps/faq/views.py new file mode 100644 index 0000000..91ea44a --- /dev/null +++ b/shelfzilla/apps/faq/views.py @@ -0,0 +1,3 @@ +from django.shortcuts import render + +# Create your views here. diff --git a/shelfzilla/settings/base.py b/shelfzilla/settings/base.py index 58cdc5a..2613503 100644 --- a/shelfzilla/settings/base.py +++ b/shelfzilla/settings/base.py @@ -69,6 +69,7 @@ INSTALLED_APPS = ( 'shelfzilla.apps.mailing', 'shelfzilla.apps.manga', 'shelfzilla.apps.blog', + 'shelfzilla.apps.faq', 'shelfzilla.apps.pjax', # API