From 84aa49c698fd0e3e2643631061eb6baf1eaad0dc Mon Sep 17 00:00:00 2001 From: John Carter Date: Sun, 25 Sep 2016 22:05:44 +1300 Subject: [PATCH] Updated example app to django 1.8, added migrations --- .../apps/catalog/migrations/0001_initial.py | 20 ++ .../apps/catalog/migrations/__init__.py | 0 .../apps/storage/migrations/0001_initial.py | 33 ++++ .../apps/storage/migrations/__init__.py | 0 example/cheeseshop/settings.py | 182 +++++++++--------- example/cheeseshop/urls.py | 20 +- 6 files changed, 150 insertions(+), 105 deletions(-) create mode 100644 example/cheeseshop/apps/catalog/migrations/0001_initial.py create mode 100644 example/cheeseshop/apps/catalog/migrations/__init__.py create mode 100644 example/cheeseshop/apps/storage/migrations/0001_initial.py create mode 100644 example/cheeseshop/apps/storage/migrations/__init__.py diff --git a/example/cheeseshop/apps/catalog/migrations/0001_initial.py b/example/cheeseshop/apps/catalog/migrations/0001_initial.py new file mode 100644 index 0000000..f77e3b6 --- /dev/null +++ b/example/cheeseshop/apps/catalog/migrations/0001_initial.py @@ -0,0 +1,20 @@ +# -*- coding: utf-8 -*- +from __future__ import unicode_literals + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ] + + operations = [ + migrations.CreateModel( + name='Brand', + fields=[ + ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ('name', models.CharField(max_length=75)), + ], + ), + ] diff --git a/example/cheeseshop/apps/catalog/migrations/__init__.py b/example/cheeseshop/apps/catalog/migrations/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/example/cheeseshop/apps/storage/migrations/0001_initial.py b/example/cheeseshop/apps/storage/migrations/0001_initial.py new file mode 100644 index 0000000..9ef1e33 --- /dev/null +++ b/example/cheeseshop/apps/storage/migrations/0001_initial.py @@ -0,0 +1,33 @@ +# -*- coding: utf-8 -*- +from __future__ import unicode_literals + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ] + + operations = [ + migrations.CreateModel( + name='Shelf', + fields=[ + ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ('name', models.CharField(max_length=75)), + ], + options={ + 'verbose_name_plural': 'shelves', + }, + ), + migrations.CreateModel( + name='Supply', + fields=[ + ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ('name', models.CharField(max_length=75)), + ], + options={ + 'verbose_name_plural': 'supplies', + }, + ), + ] diff --git a/example/cheeseshop/apps/storage/migrations/__init__.py b/example/cheeseshop/apps/storage/migrations/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/example/cheeseshop/settings.py b/example/cheeseshop/settings.py index 9ad2ffc..ebec08c 100644 --- a/example/cheeseshop/settings.py +++ b/example/cheeseshop/settings.py @@ -1,77 +1,76 @@ -from datetime import datetime +""" +Django settings for cheeseshop project. + +Generated by 'django-admin startproject' using Django 1.8.14. + +For more information on this file, see +https://docs.djangoproject.com/en/1.8/topics/settings/ + +For the full list of settings and their values, see +https://docs.djangoproject.com/en/1.8/ref/settings/ +""" + +# Build paths inside the project like this: os.path.join(BASE_DIR, ...) +import os +from datetime import date from decimal import Decimal -# Django settings for cheeseshop project. +BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) -DEBUG = True -TEMPLATE_DEBUG = DEBUG -ADMINS = ( - # ('Your Name', 'your_email@domain.com'), -) - -MANAGERS = ADMINS - -DATABASES = { - 'default': { - 'ENGINE': 'django.db.backends.sqlite3', # Add 'postgresql_psycopg2', 'postgresql', 'mysql', 'sqlite3' or 'oracle'. - 'NAME': '/tmp/cheeseshop.db', # Or path to database file if using sqlite3. - 'USER': '', # Not used with sqlite3. - 'PASSWORD': '', # Not used with sqlite3. - 'HOST': '', # Set to empty string for localhost. Not used with sqlite3. - 'PORT': '', # Set to empty string for default. Not used with sqlite3. - } -} - -# Local time zone for this installation. Choices can be found here: -# http://en.wikipedia.org/wiki/List_of_tz_zones_by_name -# although not all choices may be available on all operating systems. -# On Unix systems, a value of None will cause Django to use the same -# timezone as the operating system. -# If running in a Windows environment this must be set to the same as your -# system time zone. -TIME_ZONE = 'America/Chicago' - -# Language code for this installation. All choices can be found here: -# http://www.i18nguy.com/unicode/language-identifiers.html -LANGUAGE_CODE = 'en-us' +# Quick-start development settings - unsuitable for production +# See https://docs.djangoproject.com/en/1.8/howto/deployment/checklist/ SITE_ID = 1 -# If you set this to False, Django will make some optimizations so as not -# to load the internationalization machinery. -USE_I18N = True - -# If you set this to False, Django will not format dates, numbers and -# calendars according to the current locale -USE_L10N = True - -# Absolute path to the directory that holds media. -# Example: "/home/media/media.lawrence.com/" -MEDIA_ROOT = '' - -# URL that handles the media served from MEDIA_ROOT. Make sure to use a -# trailing slash if there is a path component (optional in other cases). -# Examples: "http://media.lawrence.com", "http://example.com/media/" -MEDIA_URL = '' - -STATIC_URL = '/static/' - -# URL prefix for admin media -- CSS, JavaScript and images. Make sure to use a -# trailing slash. -# Examples: "http://foo.com/media/", "/media/". -ADMIN_MEDIA_PREFIX = '/media/' - -# Make this unique, and don't share it with anybody. +# SECURITY WARNING: keep the secret key used in production secret! SECRET_KEY = 'hdx64#m+lnc_0ffoyehbk&7gk1&*9uar$pcfcm-%$km#p0$k=6' -# List of callables that know how to import templates from various sources. -TEMPLATE_LOADERS = ( - 'django.template.loaders.filesystem.Loader', - 'django.template.loaders.app_directories.Loader', -# 'django.template.loaders.eggs.Loader', +# SECURITY WARNING: don't run with debug turned on in production! +DEBUG = True + +ALLOWED_HOSTS = [] + + +# Application definition + +INSTALLED_APPS = ( + 'django.contrib.admin', + 'django.contrib.auth', + 'django.contrib.contenttypes', + 'django.contrib.sessions', + 'django.contrib.sites', + 'django.contrib.messages', + 'django.contrib.staticfiles', + 'cheeseshop.apps.catalog', + 'cheeseshop.apps.storage', + 'constance', + 'constance.backends.database', ) +old_INSTALLED_APPS = ( + 'django.contrib.auth', + 'django.contrib.contenttypes', + 'django.contrib.sessions', + 'django.contrib.sites', + 'django.contrib.messages', + 'django.contrib.admin', + 'cheeseshop.apps.catalog', + 'cheeseshop.apps.storage', + 'constance', + 'constance.backends.database', +) + +MIDDLEWARE_CLASSES = ( + 'django.middleware.common.CommonMiddleware', + 'django.contrib.sessions.middleware.SessionMiddleware', + 'django.middleware.csrf.CsrfViewMiddleware', + 'django.contrib.auth.middleware.AuthenticationMiddleware', + 'django.contrib.messages.middleware.MessageMiddleware', +) + +ROOT_URLCONF = 'cheeseshop.urls' + TEMPLATES = [ { 'BACKEND': 'django.template.backends.django.DjangoTemplates', @@ -88,35 +87,19 @@ TEMPLATES = [ }, ] -MIDDLEWARE_CLASSES = ( - 'django.middleware.common.CommonMiddleware', - 'django.contrib.sessions.middleware.SessionMiddleware', - 'django.middleware.csrf.CsrfViewMiddleware', - 'django.contrib.auth.middleware.AuthenticationMiddleware', - 'django.contrib.messages.middleware.MessageMiddleware', -) +WSGI_APPLICATION = 'cheeseshop.wsgi.application' -ROOT_URLCONF = 'cheeseshop.urls' -TEMPLATE_DIRS = ( - # Put strings here, like "/home/html/django_templates" or "C:/www/django/templates". - # Always use forward slashes, even on Windows. - # Don't forget to use absolute paths, not relative paths. -) +# Database +# https://docs.djangoproject.com/en/1.8/ref/settings/#databases -INSTALLED_APPS = ( - 'django.contrib.auth', - 'django.contrib.contenttypes', - 'django.contrib.sessions', - 'django.contrib.sites', - 'django.contrib.messages', - # Uncomment the next line to enable the admin: - 'django.contrib.admin', - 'cheeseshop.apps.catalog', - 'cheeseshop.apps.storage', - 'constance', - 'constance.backends.database', -) +DATABASES = { + 'default': { + 'ENGINE': 'django.db.backends.sqlite3', + 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), + 'NAME': '/tmp/cheeseshop.db', + } +} CONSTANCE_REDIS_CONNECTION = { 'host': 'localhost', @@ -128,7 +111,7 @@ CONSTANCE_CONFIG = { 'BANNER': ('The National Cheese Emporium', 'name of the shop'), 'OWNER': ('Mr. Henry Wensleydale', 'owner of the shop'), 'MUSICIANS': (4, 'number of musicians inside the shop'), - 'DATE_ESTABLISHED': (datetime(1972, 11, 30), "the shop's first opening"), + 'DATE_ESTABLISHED': (date(1972, 11, 30), "the shop's first opening"), } CONSTANCE_BACKEND = 'constance.backends.database.DatabaseBackend' @@ -141,3 +124,22 @@ CACHES = { } } CONSTANCE_DATABASE_CACHE_BACKEND = 'default' + +# Internationalization +# https://docs.djangoproject.com/en/1.8/topics/i18n/ + +LANGUAGE_CODE = 'en-us' + +TIME_ZONE = 'America/Chicago' + +USE_I18N = True + +USE_L10N = True + +USE_TZ = True + + +# Static files (CSS, JavaScript, Images) +# https://docs.djangoproject.com/en/1.8/howto/static-files/ + +STATIC_URL = '/static/' diff --git a/example/cheeseshop/urls.py b/example/cheeseshop/urls.py index b17590b..508dbac 100644 --- a/example/cheeseshop/urls.py +++ b/example/cheeseshop/urls.py @@ -1,22 +1,12 @@ -from django.conf.urls import * +from django.conf.urls import include, url from django.contrib.staticfiles.urls import staticfiles_urlpatterns -from django.conf import settings - -# Uncomment the next two lines to enable the admin: from django.contrib import admin +from django.conf import settings admin.autodiscover() -urlpatterns = patterns('', - # Example: - # (r'^cheeseshop/', include('cheeseshop.foo.urls')), - - # Uncomment the admin/doc line below and add 'django.contrib.admindocs' - # to INSTALLED_APPS to enable admin documentation: - # (r'^admin/doc/', include('django.contrib.admindocs.urls')), - - # Uncomment the next line to enable the admin: - (r'^admin/', include(admin.site.urls)), -) +urlpatterns = [ + url(r'^admin/', include(admin.site.urls)), +] if settings.DEBUG: urlpatterns += staticfiles_urlpatterns()