Implement a 'local' app for caminus-specific bits

This commit is contained in:
Trever Fischer
2012-03-03 17:10:14 -05:00
parent e80cfd9e7d
commit 8aeca57795
8 changed files with 122 additions and 1 deletions

0
local/__init__.py Normal file
View File

4
local/admin.py Normal file
View File

@@ -0,0 +1,4 @@
import models
from django.contrib import admin
admin.site.register(models.CurrencyAccount)

View File

@@ -0,0 +1,79 @@
# 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 'CurrencyAccount'
db.create_table('iConomy', (
('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
('profile', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['profiles.MinecraftProfile'], to_field='mc_username', db_column='username')),
('balance', self.gf('django.db.models.fields.FloatField')(default=3000)),
('status', self.gf('django.db.models.fields.IntegerField')()),
))
db.send_create_signal('local', ['CurrencyAccount'])
def backwards(self, orm):
# Deleting model 'CurrencyAccount'
db.delete_table('iConomy')
models = {
'auth.group': {
'Meta': {'object_name': 'Group'},
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}),
'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'})
},
'auth.permission': {
'Meta': {'ordering': "('content_type__app_label', 'content_type__model', 'codename')", 'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'},
'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}),
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
},
'auth.user': {
'Meta': {'object_name': 'User'},
'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}),
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}),
'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'})
},
'contenttypes.contenttype': {
'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
},
'local.currencyaccount': {
'Meta': {'object_name': 'CurrencyAccount', 'db_table': "'iConomy'"},
'balance': ('django.db.models.fields.FloatField', [], {'default': '3000'}),
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
'profile': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['profiles.MinecraftProfile']", 'to_field': "'mc_username'", 'db_column': "'username'"}),
'status': ('django.db.models.fields.IntegerField', [], {})
},
'profiles.minecraftprofile': {
'Meta': {'object_name': 'MinecraftProfile'},
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
'mc_username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}),
'user': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True'})
}
}
complete_apps = ['local']

View File

20
local/models.py Normal file
View File

@@ -0,0 +1,20 @@
from django.db import models
from profiles.models import MinecraftProfile
from django.db.models.signals import post_save
class CurrencyAccount(models.Model):
profile = models.ForeignKey(MinecraftProfile, to_field='mc_username', db_column='username')
balance = models.FloatField(default=3000)
status = models.IntegerField()
class Meta:
db_table = 'iConomy'
def __unicode__(self):
return self.profile.__unicode__()
def create_account(sender, instance, created, **kwargs):
if created:
CurrencyAccount.objects.create(profile=sender)
post_save.connect(create_account, sender=MinecraftProfile)

16
local/tests.py Normal file
View File

@@ -0,0 +1,16 @@
"""
This file demonstrates writing tests using the unittest module. These will pass
when you run "manage.py test".
Replace this with more appropriate tests for your application.
"""
from django.test import TestCase
class SimpleTest(TestCase):
def test_basic_addition(self):
"""
Tests that 1 + 1 always equals 2.
"""
self.assertEqual(1 + 1, 2)

1
local/views.py Normal file
View File

@@ -0,0 +1 @@
# Create your views here.

View File

@@ -131,7 +131,8 @@ INSTALLED_APPS = (
'news',
'django.contrib.flatpages',
'minecraft',
'petition'
'petition',
'local',
# Uncomment the next line to enable admin documentation:
# 'django.contrib.admindocs',
)