Add slug field to the bootstap setup model
This commit is contained in:
@@ -71,5 +71,6 @@ FIXTURE_METADATA_EDITED = 'edited'
|
||||
FIXTURE_METADATA_MAYAN_VERSION = 'mayan_edms_version'
|
||||
FIXTURE_METADATA_FORMAT = 'format'
|
||||
FIXTURE_METADATA_NAME = 'name'
|
||||
FIXTURE_METADATA_SLUG = 'slug'
|
||||
FIXTURE_METADATA_DESCRIPTION = 'description'
|
||||
BOOTSTRAP_EXTENSION = 'txt'
|
||||
|
||||
@@ -0,0 +1,35 @@
|
||||
# -*- 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 'BootstrapSetup.slug'
|
||||
db.add_column('bootstrap_bootstrapsetup', 'slug',
|
||||
self.gf('django.db.models.fields.SlugField')(default='', unique=True, max_length=128, blank=True),
|
||||
keep_default=False)
|
||||
|
||||
|
||||
def backwards(self, orm):
|
||||
# Deleting field 'BootstrapSetup.slug'
|
||||
db.delete_column('bootstrap_bootstrapsetup', 'slug')
|
||||
|
||||
|
||||
models = {
|
||||
'bootstrap.bootstrapsetup': {
|
||||
'Meta': {'ordering': "['name']", 'object_name': 'BootstrapSetup'},
|
||||
'created': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2012, 10, 16, 0, 0)'}),
|
||||
'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
|
||||
'fixture': ('django.db.models.fields.TextField', [], {}),
|
||||
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
|
||||
'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '128'}),
|
||||
'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '128', 'blank': 'True'}),
|
||||
'type': ('django.db.models.fields.CharField', [], {'max_length': '16'})
|
||||
}
|
||||
}
|
||||
|
||||
complete_apps = ['bootstrap']
|
||||
@@ -5,6 +5,8 @@ import tempfile
|
||||
import re
|
||||
import datetime
|
||||
|
||||
import slugify
|
||||
|
||||
try:
|
||||
from cStringIO import StringIO
|
||||
except ImportError:
|
||||
@@ -26,6 +28,7 @@ class BootstrapSetup(models.Model):
|
||||
Model to store the fixture for a pre configured setup.
|
||||
"""
|
||||
name = models.CharField(max_length=128, verbose_name=_(u'name'), unique=True)
|
||||
slug = models.SlugField(max_length=128, verbose_name=_(u'slug'), unique=True, blank=True)
|
||||
description = models.TextField(verbose_name=_(u'description'), blank=True)
|
||||
fixture = models.TextField(verbose_name=_(u'fixture'), help_text=_(u'These are the actual database structure creation instructions.'))
|
||||
type = models.CharField(max_length=16, verbose_name=_(u'type'), choices=FIXTURE_TYPES_CHOICES)
|
||||
@@ -92,6 +95,8 @@ class BootstrapSetup(models.Model):
|
||||
self.get_metadata_string(),
|
||||
self.cleaned_fixture
|
||||
)
|
||||
if not self.slug:
|
||||
self.slug = slugify.slugify(self.name)
|
||||
return super(BootstrapSetup, self).save(*args, **kwargs)
|
||||
|
||||
class Meta:
|
||||
|
||||
@@ -13,7 +13,7 @@ from .models import BootstrapSetup
|
||||
from .classes import FixtureMetadata
|
||||
from .literals import (FIXTURE_METADATA_CREATED, FIXTURE_METADATA_EDITED,
|
||||
FIXTURE_METADATA_MAYAN_VERSION, FIXTURE_METADATA_FORMAT, FIXTURE_METADATA_NAME,
|
||||
FIXTURE_METADATA_DESCRIPTION, DATETIME_STRING_FORMAT)
|
||||
FIXTURE_METADATA_DESCRIPTION, DATETIME_STRING_FORMAT, FIXTURE_METADATA_SLUG)
|
||||
|
||||
register_links([BootstrapSetup], [link_bootstrap_setup_view, link_bootstrap_setup_edit, link_bootstrap_setup_delete, link_bootstrap_setup_execute, link_bootstrap_setup_export])
|
||||
register_links([BootstrapSetup], [link_bootstrap_setup_list, link_bootstrap_setup_create, link_bootstrap_setup_dump, link_bootstrap_setup_import], menu_name='secondary_menu')
|
||||
@@ -24,4 +24,5 @@ FixtureMetadata(FIXTURE_METADATA_EDITED, generate_function=lambda fixture_instan
|
||||
FixtureMetadata(FIXTURE_METADATA_MAYAN_VERSION, generate_function=lambda fixture_instance: __version__)
|
||||
FixtureMetadata(FIXTURE_METADATA_FORMAT, generate_function=lambda fixture_instance: fixture_instance.type, property_name='type')
|
||||
FixtureMetadata(FIXTURE_METADATA_NAME, generate_function=lambda fixture_instance: fixture_instance.name, property_name='name')
|
||||
FixtureMetadata(FIXTURE_METADATA_SLUG, generate_function=lambda fixture_instance: fixture_instance.slug, property_name='slug')
|
||||
FixtureMetadata(FIXTURE_METADATA_DESCRIPTION, generate_function=lambda fixture_instance: fixture_instance.description, property_name='description')
|
||||
|
||||
@@ -21,3 +21,4 @@ pbs==0.105
|
||||
psutil==0.5.1
|
||||
GitPython==0.3.2.RC1
|
||||
PyYAML==3.10
|
||||
unicode-slugify==0.1
|
||||
|
||||
Reference in New Issue
Block a user