Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Empty file added ClaireMiller/__init__.py
Empty file.
6 changes: 6 additions & 0 deletions ClaireMiller/admin.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
# -*- coding: utf-8 -*-
from django.contrib import admin
from .models import ClaireMiller

# Register your models here.
admin.site.register(ClaireMiller)
8 changes: 8 additions & 0 deletions ClaireMiller/apps.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# -*- coding: utf-8 -*-
from __future__ import unicode_literals

from django.apps import AppConfig


class ClairemillerConfig(AppConfig):
name = 'ClaireMiller'
31 changes: 31 additions & 0 deletions ClaireMiller/migrations/0001_initial.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
# Generated by Django 2.2.4 on 2019-08-15 23:31

from django.db import migrations, models
import django.db.models.deletion


class Migration(migrations.Migration):

initial = True

dependencies = [
('passengers', '0007_delete_passenger'),
]

operations = [
migrations.CreateModel(
name='ClaireMiller',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('name', models.CharField(default='Claire Miller', max_length=256)),
('job', models.CharField(default='Flight Attendant', max_length=20)),
('imageUrl', models.CharField(default='/ClaireMiller/src/clare_profile.jpg', max_length=255)),
('flavorText', models.CharField(default='Claire Miller is a determined, resourceful woman with the strength to survive any catastrophe', max_length=255)),
('carry_on', models.ForeignKey(default=None, on_delete=django.db.models.deletion.SET_DEFAULT, related_name='carry_on', to='passengers.CarryOn')),
('personal_item', models.ForeignKey(default=None, on_delete=django.db.models.deletion.SET_DEFAULT, related_name='personal_item', to='passengers.CarryOn')),
],
options={
'abstract': False,
},
),
]
Empty file.
38 changes: 38 additions & 0 deletions ClaireMiller/models.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
# -*- coding: utf-8 -*-
from __future__ import unicode_literals

from django.db import models
from passengers.models import Passenger


# Create your models here.
class ClaireMiller(Passenger):

#Should default to Claire Miller
name = models.CharField(
max_length=256,
default='Claire Miller',
)

#Job could link to a Jobs table, should give the person some 'skills'
job = models.CharField(
max_length=20,
default='Flight Attendant',
)

#Default the image to the image created in the src filie
imageUrl = models.CharField(
max_length=255,
default='/ClaireMiller/src/clare_profile.jpg',
)

#Details about the character
flavorText = models.CharField(
max_length=255,
default='Claire Miller is a determined, resourceful woman with the strength to survive any catastrophe'
)

def __str__(self):
return self.name


Binary file added ClaireMiller/src/clare_profile.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
32 changes: 32 additions & 0 deletions ClaireMiller/tests.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
# -*- coding: utf-8 -*-
from __future__ import unicode_literals

from django.test import TestCase
from .models import ClaireMiller
from passengers.models import CarryOn

# Create your tests here.
class ClaireMillerTestCase(TestCase):
def setUp(self):
potato = CarryOn.objects.create(name="potato")
neckPillow = CarryOn.objects.create(name="neckPillow")
clare = ClaireMiller.objects.create(
personal_item = neckPillow,
carry_on = potato
)

def test_clare_name(self):
clare = ClaireMiller.objects.get(name='Claire Miller')
self.assertEqual(clare.name, 'Claire Miller')

def test_clare_job(self):
clare = ClaireMiller.objects.get(name='Claire Miller')
self.assertEqual(clare.job, 'Flight Attendant')

def test_clare_flavorText(self):
clare = ClaireMiller.objects.get(name='Claire Miller')
self.assertEqual(clare.flavorText, 'Claire Miller is a determined, resourceful woman with the strength to survive any catastrophe')

def test_clare_image_url(self):
clare = ClaireMiller.objects.get(name='Claire Miller')
self.assertEqual(clare.imageUrl, '/ClaireMiller/src/clare_profile.jpg')
6 changes: 6 additions & 0 deletions ClaireMiller/views.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
# -*- coding: utf-8 -*-
from __future__ import unicode_literals

from django.shortcuts import render

# Create your views here.
31 changes: 17 additions & 14 deletions manage.py
Original file line number Diff line number Diff line change
@@ -1,21 +1,24 @@
#!/usr/bin/env python
"""Django's command-line utility for administrative tasks."""
#!/usr/bin/env python
import os
import sys


def main():
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'snakes_on_plane_project.settings')
if __name__ == "__main__":
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "snakes_on_plane_project.settings")
try:
from django.core.management import execute_from_command_line
except ImportError as exc:
raise ImportError(
"Couldn't import Django. Are you sure it's installed and "
"available on your PYTHONPATH environment variable? Did you "
"forget to activate a virtual environment?"
) from exc
execute_from_command_line(sys.argv)


if __name__ == '__main__':
main()
except ImportError:
# The above import may fail for some other reason. Ensure that the
# issue is really that Django is missing to avoid masking other
# exceptions on Python 2.
try:
import django
except ImportError:
raise ImportError(
"Couldn't import Django. Are you sure it's installed and "
"available on your PYTHONPATH environment variable? Did you "
"forget to activate a virtual environment?"
)
raise
execute_from_command_line(sys.argv)
2 changes: 1 addition & 1 deletion passengers/admin.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@
from .models import CarryOn

# Register your models here.
admin.site.register(CarryOn)
admin.site.register(CarryOn)
1 change: 0 additions & 1 deletion passengers/apps.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
from django.apps import AppConfig


class PassengersConfig(AppConfig):
name = 'passengers'
2 changes: 1 addition & 1 deletion passengers/models.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ class CarryOn(models.Model):
attack = models.IntegerField(default=100)

def __str__(self):
return f'{self.name} - {self.attack}'
return self.name

class Passenger(models.Model):
name = models.CharField(max_length=256)
Expand Down
1 change: 0 additions & 1 deletion passengers/tests.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ class CarryOnTestCase(TestCase):
def setUp(self):
rake = CarryOn.objects.create(name="rake")


def test_rake_name(self):
rake = CarryOn.objects.get(name = "rake")
self.assertEqual(rake.name, "rake")
Expand Down
1 change: 1 addition & 0 deletions snakes_on_plane_project/settings.py
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,7 @@
'django.contrib.messages',
'django.contrib.staticfiles',
'passengers.apps.PassengersConfig',
'ClaireMiller.apps.ClairemillerConfig',
]

MIDDLEWARE = [
Expand Down