diff options
| -rw-r--r-- | .gitignore | 4 | ||||
| -rw-r--r-- | papillon/polls/migrations/0001_initial.py | 183 | ||||
| -rw-r--r-- | papillon/polls/migrations/__init__.py | 0 | ||||
| -rw-r--r-- | papillon/settings.py.tpl | 32 | ||||
| -rw-r--r-- | papillon/urls.py | 8 | 
5 files changed, 215 insertions, 12 deletions
| diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..2b0f79c --- /dev/null +++ b/.gitignore @@ -0,0 +1,4 @@ +*.pyc +*.db +*.swp +papillon/settings.py diff --git a/papillon/polls/migrations/0001_initial.py b/papillon/polls/migrations/0001_initial.py new file mode 100644 index 0000000..bbe3c98 --- /dev/null +++ b/papillon/polls/migrations/0001_initial.py @@ -0,0 +1,183 @@ +# encoding: utf-8 +import datetime +from south.db import db +from south.v2 import SchemaMigration +from django.db import models + +class Migration(SchemaMigration): +     +    def forwards(self, orm): +         +        # Adding model 'Category' +        db.create_table('polls_category', ( +            ('description', self.gf('django.db.models.fields.TextField')()), +            ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), +            ('name', self.gf('django.db.models.fields.CharField')(max_length=100)), +        )) +        db.send_create_signal('polls', ['Category']) + +        # Adding model 'PollUser' +        db.create_table('polls_polluser', ( +            ('email', self.gf('django.db.models.fields.CharField')(max_length=100)), +            ('password', self.gf('django.db.models.fields.CharField')(max_length=100)), +            ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), +            ('modification_date', self.gf('django.db.models.fields.DateTimeField')(auto_now=True, blank=True)), +            ('name', self.gf('django.db.models.fields.CharField')(max_length=100)), +        )) +        db.send_create_signal('polls', ['PollUser']) + +        # Adding model 'Poll' +        db.create_table('polls_poll', ( +            ('category', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['polls.Category'], null=True, blank=True)), +            ('hide_choices', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True)), +            ('enddate', self.gf('django.db.models.fields.DateTimeField')(null=True, blank=True)), +            ('name', self.gf('django.db.models.fields.CharField')(max_length=200)), +            ('modification_date', self.gf('django.db.models.fields.DateTimeField')(auto_now=True, blank=True)), +            ('author', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['polls.PollUser'], null=True, blank=True)), +            ('open', self.gf('django.db.models.fields.BooleanField')(default=True, blank=True)), +            ('admin_url', self.gf('django.db.models.fields.CharField')(max_length=100)), +            ('opened_admin', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True)), +            ('base_url', self.gf('django.db.models.fields.CharField')(max_length=100)), +            ('author_name', self.gf('django.db.models.fields.CharField')(max_length=100)), +            ('public', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True)), +            ('dated_choices', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True)), +            ('type', self.gf('django.db.models.fields.CharField')(max_length=1)), +            ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), +            ('description', self.gf('django.db.models.fields.CharField')(max_length=1000)), +        )) +        db.send_create_signal('polls', ['Poll']) + +        # Adding model 'Comment' +        db.create_table('polls_comment', ( +            ('date', self.gf('django.db.models.fields.DateTimeField')(auto_now_add=True, blank=True)), +            ('text', self.gf('django.db.models.fields.CharField')(max_length=1000)), +            ('poll', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['polls.Poll'])), +            ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), +            ('author_name', self.gf('django.db.models.fields.CharField')(max_length=100)), +        )) +        db.send_create_signal('polls', ['Comment']) + +        # Adding model 'Voter' +        db.create_table('polls_voter', ( +            ('poll', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['polls.Poll'])), +            ('creation_date', self.gf('django.db.models.fields.DateTimeField')(auto_now_add=True, blank=True)), +            ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), +            ('modification_date', self.gf('django.db.models.fields.DateTimeField')(auto_now=True, blank=True)), +            ('user', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['polls.PollUser'])), +        )) +        db.send_create_signal('polls', ['Voter']) + +        # Adding model 'Choice' +        db.create_table('polls_choice', ( +            ('available', self.gf('django.db.models.fields.BooleanField')(default=True, blank=True)), +            ('name', self.gf('django.db.models.fields.CharField')(max_length=200)), +            ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), +            ('limit', self.gf('django.db.models.fields.IntegerField')(null=True, blank=True)), +            ('poll', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['polls.Poll'])), +            ('order', self.gf('django.db.models.fields.IntegerField')()), +        )) +        db.send_create_signal('polls', ['Choice']) + +        # Adding model 'Vote' +        db.create_table('polls_vote', ( +            ('voter', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['polls.Voter'])), +            ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), +            ('value', self.gf('django.db.models.fields.IntegerField')(null=True, blank=True)), +            ('choice', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['polls.Choice'])), +        )) +        db.send_create_signal('polls', ['Vote']) +     +     +    def backwards(self, orm): +         +        # Deleting model 'Category' +        db.delete_table('polls_category') + +        # Deleting model 'PollUser' +        db.delete_table('polls_polluser') + +        # Deleting model 'Poll' +        db.delete_table('polls_poll') + +        # Deleting model 'Comment' +        db.delete_table('polls_comment') + +        # Deleting model 'Voter' +        db.delete_table('polls_voter') + +        # Deleting model 'Choice' +        db.delete_table('polls_choice') + +        # Deleting model 'Vote' +        db.delete_table('polls_vote') +     +     +    models = { +        'polls.category': { +            'Meta': {'object_name': 'Category'}, +            'description': ('django.db.models.fields.TextField', [], {}), +            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), +            'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) +        }, +        'polls.choice': { +            'Meta': {'object_name': 'Choice'}, +            'available': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), +            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), +            'limit': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}), +            'name': ('django.db.models.fields.CharField', [], {'max_length': '200'}), +            'order': ('django.db.models.fields.IntegerField', [], {}), +            'poll': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['polls.Poll']"}) +        }, +        'polls.comment': { +            'Meta': {'object_name': 'Comment'}, +            'author_name': ('django.db.models.fields.CharField', [], {'max_length': '100'}), +            'date': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}), +            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), +            'poll': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['polls.Poll']"}), +            'text': ('django.db.models.fields.CharField', [], {'max_length': '1000'}) +        }, +        'polls.poll': { +            'Meta': {'object_name': 'Poll'}, +            'admin_url': ('django.db.models.fields.CharField', [], {'max_length': '100'}), +            'author': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['polls.PollUser']", 'null': 'True', 'blank': 'True'}), +            'author_name': ('django.db.models.fields.CharField', [], {'max_length': '100'}), +            'base_url': ('django.db.models.fields.CharField', [], {'max_length': '100'}), +            'category': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['polls.Category']", 'null': 'True', 'blank': 'True'}), +            'dated_choices': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), +            'description': ('django.db.models.fields.CharField', [], {'max_length': '1000'}), +            'enddate': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), +            'hide_choices': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), +            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), +            'modification_date': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'blank': 'True'}), +            'name': ('django.db.models.fields.CharField', [], {'max_length': '200'}), +            'open': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), +            'opened_admin': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), +            'public': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), +            'type': ('django.db.models.fields.CharField', [], {'max_length': '1'}) +        }, +        'polls.polluser': { +            'Meta': {'object_name': 'PollUser'}, +            'email': ('django.db.models.fields.CharField', [], {'max_length': '100'}), +            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), +            'modification_date': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'blank': 'True'}), +            'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}), +            'password': ('django.db.models.fields.CharField', [], {'max_length': '100'}) +        }, +        'polls.vote': { +            'Meta': {'object_name': 'Vote'}, +            'choice': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['polls.Choice']"}), +            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), +            'value': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}), +            'voter': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['polls.Voter']"}) +        }, +        'polls.voter': { +            'Meta': {'object_name': 'Voter'}, +            'creation_date': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}), +            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), +            'modification_date': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'blank': 'True'}), +            'poll': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['polls.Poll']"}), +            'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['polls.PollUser']"}) +        } +    } +     +    complete_apps = ['polls'] diff --git a/papillon/polls/migrations/__init__.py b/papillon/polls/migrations/__init__.py new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/papillon/polls/migrations/__init__.py diff --git a/papillon/settings.py.tpl b/papillon/settings.py.tpl index 1307e24..7ca2761 100644 --- a/papillon/settings.py.tpl +++ b/papillon/settings.py.tpl @@ -6,7 +6,9 @@  DEBUG = True  TEMPLATE_DEBUG = DEBUG -ROOT_PATH = '/var/local/django/papillon/papillon/' +import os.path +PROJECT_PATH = os.path.dirname(os.path.abspath(__file__)) +  SERVER_URL = 'http://localhost/'  EXTRA_URL = 'papillon/'  BASE_SITE = SERVER_URL + EXTRA_URL @@ -21,12 +23,18 @@ ADMINS = (  MANAGERS = ADMINS -DATABASE_ENGINE = 'sqlite3'           # 'postgresql_psycopg2', 'postgresql', 'mysql', 'sqlite3' or 'ado_mssql'. -DATABASE_NAME = ROOT_PATH + 'papillon.db'             # Or path to database file if using sqlite3. -DATABASE_USER = ''             # Not used with sqlite3. -DATABASE_PASSWORD = ''         # Not used with sqlite3. -DATABASE_HOST = ''             # Set to empty string for localhost. Not used with sqlite3. -DATABASE_PORT = ''             # Set to empty string for default. Not used with sqlite3. +DATABASES = { +    'default': { +        'ENGINE': 'sqlite3',                        # Add 'postgresql_psycopg2', 'postgresql', 'mysql', 'sqlite3' or 'oracle'. +            'NAME': PROJECT_PATH + '/papillon.db',   # Or path to database file if using sqlite3. +            'USER': 'postgres',                     # 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://www.postgresql.org/docs/8.1/static/datetime-keywords.html#DATETIME-TIMEZONE-SET-TABLE @@ -48,7 +56,7 @@ USE_I18N = True  # Absolute path to the directory that holds media.  # Example: "/home/media/media.lawrence.com/" -MEDIA_ROOT = ROOT_PATH + 'static/' +MEDIA_ROOT = PROJECT_PATH + '/static/'  # URL that handles the media served from MEDIA_ROOT.  # Example: "http://media.lawrence.com" @@ -83,16 +91,22 @@ 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. -    ROOT_PATH + 'templates', +    PROJECT_PATH + '/templates',  )  INSTALLED_APPS = ( +    # contribs      'django.contrib.auth',      'django.contrib.admin',      'django.contrib.contenttypes',      'django.contrib.sessions',      'django.contrib.sites',      'django.contrib.markup', + +    # third parties +    'south', + +    # app      'papillon.polls',  ) diff --git a/papillon/urls.py b/papillon/urls.py index 13aa4d0..9d1d8a3 100644 --- a/papillon/urls.py +++ b/papillon/urls.py @@ -29,7 +29,9 @@ feeds = {      'poll': PollLatestEntries,  } -base = '^' + settings.EXTRA_URL[:-1] +base = '^' + settings.EXTRA_URL +if not base.endswith('/'): +    base += '/'  urlpatterns = patterns('',       (base + r'admin/doc/', include('django.contrib.admindocs.urls')), @@ -50,7 +52,7 @@ urlpatterns = patterns('',       (base + r'feeds/(?P<url>.*)$',                   'django.contrib.syndication.views.feed', {'feed_dict': feeds}),       (base + r'static/(?P<path>.*)$', 'django.views.static.serve', -                                {'document_root': settings.ROOT_PATH + 'static'}), +                          {'document_root': settings.PROJECT_PATH + '/static'}),       (base + r'media/(?P<path>.*)$', 'django.views.static.serve', -                                {'document_root': settings.ROOT_PATH + 'media/'}), +                          {'document_root': settings.PROJECT_PATH + '/media/'}),  ) | 
