From 3361d36bbf4dc00552878646e326edb7177327ed Mon Sep 17 00:00:00 2001 From: cameronurnes Date: Thu, 31 Aug 2017 21:25:15 -0700 Subject: [PATCH] Allow preset choices for questions in HR (#836) --- hrapplications/admin.py | 15 +++++- .../migrations/0002_choices_for_questions.py | 33 +++++++++++++ hrapplications/models.py | 10 +++- .../registered/hrapplicationcreate.html | 48 ++++++++++--------- 4 files changed, 82 insertions(+), 24 deletions(-) create mode 100644 hrapplications/migrations/0002_choices_for_questions.py diff --git a/hrapplications/admin.py b/hrapplications/admin.py index c334cad2..c1d4c4d5 100755 --- a/hrapplications/admin.py +++ b/hrapplications/admin.py @@ -6,9 +6,22 @@ from hrapplications.models import ApplicationQuestion from hrapplications.models import ApplicationForm from hrapplications.models import ApplicationResponse from hrapplications.models import ApplicationComment +from hrapplications.models import ApplicationChoice + +class ChoiceInline(admin.TabularInline): + model = ApplicationChoice + extra = 0 + verbose_name_plural = 'Choices (optional)' + verbose_name= 'Choice' + +class QuestionAdmin(admin.ModelAdmin): + fieldsets = [ + (None, {'fields': ['title', 'help_text']}), + ] + inlines = [ChoiceInline] admin.site.register(Application) admin.site.register(ApplicationComment) -admin.site.register(ApplicationQuestion) +admin.site.register(ApplicationQuestion, QuestionAdmin) admin.site.register(ApplicationForm) admin.site.register(ApplicationResponse) diff --git a/hrapplications/migrations/0002_choices_for_questions.py b/hrapplications/migrations/0002_choices_for_questions.py new file mode 100644 index 00000000..2ab03135 --- /dev/null +++ b/hrapplications/migrations/0002_choices_for_questions.py @@ -0,0 +1,33 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.11.4 on 2017-08-23 19:46 +from __future__ import unicode_literals + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('hrapplications', '0001_initial'), + ] + + operations = [ + migrations.CreateModel( + name='ApplicationChoice', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('choice_text', models.CharField(max_length=200, verbose_name='Choice')), + ], + ), + migrations.AlterField( + model_name='applicationquestion', + name='title', + field=models.CharField(max_length=254, verbose_name='Question'), + ), + migrations.AddField( + model_name='applicationchoice', + name='question', + field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='choices', to='hrapplications.ApplicationQuestion'), + ), + ] diff --git a/hrapplications/models.py b/hrapplications/models.py index c76e3da4..af660ee6 100755 --- a/hrapplications/models.py +++ b/hrapplications/models.py @@ -11,13 +11,21 @@ from authentication.models import AuthServicesInfo @python_2_unicode_compatible class ApplicationQuestion(models.Model): - title = models.CharField(max_length=254) + title = models.CharField(max_length=254, verbose_name='Question') help_text = models.CharField(max_length=254, blank=True, null=True) def __str__(self): return "Question: " + self.title +@python_2_unicode_compatible +class ApplicationChoice(models.Model): + question = models.ForeignKey(ApplicationQuestion,on_delete=models.CASCADE,related_name="choices") + choice_text = models.CharField(max_length=200, verbose_name='Choice') + + def __str__(self): + return self.choice_text + @python_2_unicode_compatible class ApplicationForm(models.Model): questions = models.ManyToManyField(ApplicationQuestion) diff --git a/stock/templates/registered/hrapplicationcreate.html b/stock/templates/registered/hrapplicationcreate.html index 97737195..52251e84 100644 --- a/stock/templates/registered/hrapplicationcreate.html +++ b/stock/templates/registered/hrapplicationcreate.html @@ -5,29 +5,33 @@ {% block title %}Apply To {{ corp.corporation_name }}{% endblock title %} {% block page_title %}{% trans "Apply To" %} {{ corp.corporation_name }}{% endblock page_title %} {% block content %} -
-

{% trans "Apply To" %} {{ corp.corporation_name }}

-
-
-
- -
+
+

{% trans "Apply To" %} {{ corp.corporation_name }}

+
+
+
+
+
{% endblock %} -