Version have it's jar files on self.jarfiles, also added snapshot boolean.

This commit is contained in:
Felipe Martín 2013-05-24 13:57:22 +02:00
parent 9f6ee806af
commit db2a9ab0a6
2 changed files with 59 additions and 1 deletions

View File

@ -0,0 +1,50 @@
# -*- coding: 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 field 'Version.snapshot'
db.add_column(u'database_version', 'snapshot',
self.gf('django.db.models.fields.BooleanField')(default=False),
keep_default=False)
def backwards(self, orm):
# Deleting field 'Version.snapshot'
db.delete_column(u'database_version', 'snapshot')
models = {
'database.jarfile': {
'Meta': {'object_name': 'JarFile'},
'description': ('django.db.models.fields.CharField', [], {'default': "'client'", 'max_length': '256'}),
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
'url': ('django.db.models.fields.URLField', [], {'max_length': '200'}),
'version': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['database.Version']"})
},
'database.mod': {
'Meta': {'ordering': "['name']", 'object_name': 'Mod'},
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
'name': ('django.db.models.fields.CharField', [], {'max_length': '256'}),
'url': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'})
},
'database.version': {
'Meta': {'ordering': "['date']", 'object_name': 'Version'},
'changelog': ('django.db.models.fields.TextField', [], {}),
'date': ('django.db.models.fields.DateField', [], {}),
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
'mod': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['database.Mod']"}),
'name': ('django.db.models.fields.CharField', [], {'max_length': '128', 'blank': 'True'}),
'snapshot': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
'status': ('django.db.models.fields.CharField', [], {'default': "'release'", 'max_length': '10', 'blank': 'True'}),
'url': ('django.db.models.fields.URLField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}),
'version_number': ('django.db.models.fields.CharField', [], {'default': "'0.1.0'", 'max_length': '256'})
}
}
complete_apps = ['database']

View File

@ -76,6 +76,7 @@ class Version(models.Model):
blank=True,
default='release'
)
snapshot = models.BooleanField(default=False)
date = models.DateField()
url = models.URLField(blank=True, null=True)
name = models.CharField(max_length=128,
@ -84,6 +85,13 @@ class Version(models.Model):
)
changelog = models.TextField('changelog')
def get_jarfiles(self):
self.jarfiles = JarFile.objects.filter(version=self)
def __init__(self, *args, **kwargs):
super(self.__class__, self).__init__(*args, **kwargs)
self.get_jarfiles()
def __unicode__(self):
return "%s %s" % (
self.mod,
@ -96,7 +104,7 @@ class Version(models.Model):
class VersionAdmin(admin.ModelAdmin):
list_display = ('mod', 'status', 'version_number', 'name', 'url_html', 'date')
list_display = ('mod', 'status', 'snapshot', 'version_number', 'name', 'url_html', 'date')
list_display_links = ('version_number',)
list_filter = ('mod', 'date', 'status')
search_fields = ['version_number', 'name', 'changelog']