Skip to content

Prod Deploy #5

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 14 commits into
base: production
Choose a base branch
from
2 changes: 1 addition & 1 deletion dynamic_manipulation/__init__.py
Original file line number Diff line number Diff line change
@@ -1 +1 @@
VERSION = '0.1.0'
VERSION = '0.1.1'
8 changes: 3 additions & 5 deletions dynamic_manipulation/dynamic_actions.py
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@

from dynamic_rules.dynamic_actions import BaseDynamicAction

from dynamic_manipulation import models
from dynamic_manipulation.models import ManipulationLog

__all__ = ('BaseDynamicManipulation',)
__all__ = ('BaseDynamicManipulation', )


class BaseDynamicManipulation(BaseDynamicAction):

Expand Down Expand Up @@ -46,9 +46,7 @@ def do_manipulations(self, *args, **kwargs):
pass

def log_manipulation(self, side_effect_model=None, side_effect_uri=None):
data = dict(
rule=self.rule_model,
trigger_model=self.trigger_model)
data = dict(rule=self.rule_model, trigger_model=self.trigger_model)

if side_effect_uri:
data['side_effect_uri'] = side_effect_uri
Expand Down
123 changes: 93 additions & 30 deletions dynamic_manipulation/migrations/0001_initial.py
Original file line number Diff line number Diff line change
@@ -1,56 +1,119 @@
# encoding: utf-8
# flake8: noqa
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 'ManipulationLog'
db.create_table('dynamic_manipulation_manipulationlog', (
('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
('rule', self.gf('django.db.models.fields.related.ForeignKey')(related_name='manipulation_logs', to=orm['dynamic_rules.Rule'])),
('trigger_content_type', self.gf('django.db.models.fields.related.ForeignKey')(related_name='manipulation_triggers', to=orm['contenttypes.ContentType'])),
('trigger_model_id', self.gf('django.db.models.fields.PositiveIntegerField')(db_index=True)),
('side_effect_content_type', self.gf('django.db.models.fields.related.ForeignKey')(related_name='manipulation_side_effects', to=orm['contenttypes.ContentType'])),
('side_effect_model_id', self.gf('django.db.models.fields.PositiveIntegerField')(db_index=True)),
))
db.create_table(
'dynamic_manipulation_manipulationlog', (
('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
(
'rule', self.gf('django.db.models.fields.related.ForeignKey')(
related_name='manipulation_logs', to=orm['dynamic_rules.Rule']
)
),
(
'trigger_content_type', self.gf('django.db.models.fields.related.ForeignKey')(
related_name='manipulation_triggers', to=orm['contenttypes.ContentType']
)
),
('trigger_model_id', self.gf('django.db.models.fields.PositiveIntegerField')(db_index=True)),
(
'side_effect_content_type', self.gf('django.db.models.fields.related.ForeignKey')(
related_name='manipulation_side_effects', to=orm['contenttypes.ContentType']
)
),
('side_effect_model_id', self.gf('django.db.models.fields.PositiveIntegerField')(db_index=True)),
)
)
db.send_create_signal('dynamic_manipulation', ['ManipulationLog'])


def backwards(self, orm):

# Deleting model 'ManipulationLog'
db.delete_table('dynamic_manipulation_manipulationlog')


models = {
'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'})
'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'
})
},
'dynamic_manipulation.manipulationlog': {
'Meta': {'object_name': 'ManipulationLog'},
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
'rule': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'manipulation_logs'", 'to': "orm['dynamic_rules.Rule']"}),
'side_effect_content_type': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'manipulation_side_effects'", 'to': "orm['contenttypes.ContentType']"}),
'side_effect_model_id': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'}),
'trigger_content_type': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'manipulation_triggers'", 'to': "orm['contenttypes.ContentType']"}),
'trigger_model_id': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'})
'Meta': {
'object_name': 'ManipulationLog'
},
'id': ('django.db.models.fields.AutoField', [], {
'primary_key': 'True'
}),
'rule': (
'django.db.models.fields.related.ForeignKey', [], {
'related_name': "'manipulation_logs'",
'to': "orm['dynamic_rules.Rule']"
}
),
'side_effect_content_type': (
'django.db.models.fields.related.ForeignKey', [], {
'related_name': "'manipulation_side_effects'",
'to': "orm['contenttypes.ContentType']"
}
),
'side_effect_model_id': ('django.db.models.fields.PositiveIntegerField', [], {
'db_index': 'True'
}),
'trigger_content_type': (
'django.db.models.fields.related.ForeignKey', [], {
'related_name': "'manipulation_triggers'",
'to': "orm['contenttypes.ContentType']"
}
),
'trigger_model_id': ('django.db.models.fields.PositiveIntegerField', [], {
'db_index': 'True'
})
},
'dynamic_rules.rule': {
'Meta': {'object_name': 'Rule'},
'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}),
'Meta': {
'object_name': 'Rule'
},
'content_type':
('django.db.models.fields.related.ForeignKey', [], {
'to': "orm['contenttypes.ContentType']"
}),
'dynamic_fields': ('django_fields.fields.PickleField', [], {}),
'group_object_id': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'}),
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
'key': ('django.db.models.fields.CharField', [], {'max_length': '50'}),
'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
'group_object_id': ('django.db.models.fields.PositiveIntegerField', [], {
'db_index': 'True'
}),
'id': ('django.db.models.fields.AutoField', [], {
'primary_key': 'True'
}),
'key': ('django.db.models.fields.CharField', [], {
'max_length': '50'
}),
'name': ('django.db.models.fields.CharField', [], {
'max_length': '100'
})
}
}

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
# -*- coding: utf-8 -*-
# flake8: noqa
import datetime
from south.db import db
from south.v2 import SchemaMigration
Expand All @@ -10,53 +11,122 @@ class Migration(SchemaMigration):

def forwards(self, orm):
# Adding field 'ManipulationLog.side_effect_uri'
db.add_column('dynamic_manipulation_manipulationlog', 'side_effect_uri',
self.gf('django.db.models.fields.URLField')(max_length=200, null=True, blank=True),
keep_default=False)

db.add_column(
'dynamic_manipulation_manipulationlog',
'side_effect_uri',
self.gf('django.db.models.fields.URLField')(max_length=200, null=True, blank=True),
keep_default=False
)

# Changing field 'ManipulationLog.side_effect_content_type'
db.alter_column('dynamic_manipulation_manipulationlog', 'side_effect_content_type_id', self.gf('django.db.models.fields.related.ForeignKey')(null=True, to=orm['contenttypes.ContentType']))
db.alter_column(
'dynamic_manipulation_manipulationlog', 'side_effect_content_type_id',
self.gf('django.db.models.fields.related.ForeignKey')(null=True, to=orm['contenttypes.ContentType'])
)

# Changing field 'ManipulationLog.side_effect_model_id'
db.alter_column('dynamic_manipulation_manipulationlog', 'side_effect_model_id', self.gf('django.db.models.fields.PositiveIntegerField')(null=True))
db.alter_column(
'dynamic_manipulation_manipulationlog',
'side_effect_model_id',
self.gf('django.db.models.fields.PositiveIntegerField')(null=True)
)

def backwards(self, orm):
db.delete_column('dynamic_manipulation_manipulationlog', 'side_effect_uri')
for record in orm.ManipulationLog.objects.filter(side_effect_model_id=None):
record.delete()




models = {
'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'})
'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'
})
},
'dynamic_manipulation.manipulationlog': {
'Meta': {'object_name': 'ManipulationLog'},
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
'rule': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'manipulation_logs'", 'to': "orm['dynamic_rules.Rule']"}),
'side_effect_content_type': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'manipulation_side_effects'", 'null': 'True', 'to': "orm['contenttypes.ContentType']"}),
'side_effect_model_id': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}),
'side_effect_uri': ('django.db.models.fields.URLField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}),
'trigger_content_type': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'manipulation_triggers'", 'to': "orm['contenttypes.ContentType']"}),
'trigger_model_id': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'})
'Meta': {
'object_name': 'ManipulationLog'
},
'id': ('django.db.models.fields.AutoField', [], {
'primary_key': 'True'
}),
'rule': (
'django.db.models.fields.related.ForeignKey', [], {
'related_name': "'manipulation_logs'",
'to': "orm['dynamic_rules.Rule']"
}
),
'side_effect_content_type': (
'django.db.models.fields.related.ForeignKey', [], {
'blank': 'True',
'related_name': "'manipulation_side_effects'",
'null': 'True',
'to': "orm['contenttypes.ContentType']"
}
),
'side_effect_model_id':
('django.db.models.fields.PositiveIntegerField', [], {
'db_index': 'True',
'null': 'True',
'blank': 'True'
}),
'side_effect_uri':
('django.db.models.fields.URLField', [], {
'max_length': '200',
'null': 'True',
'blank': 'True'
}),
'trigger_content_type': (
'django.db.models.fields.related.ForeignKey', [], {
'related_name': "'manipulation_triggers'",
'to': "orm['contenttypes.ContentType']"
}
),
'trigger_model_id': ('django.db.models.fields.PositiveIntegerField', [], {
'db_index': 'True'
})
},
'dynamic_rules.rule': {
'Meta': {'object_name': 'Rule'},
'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}),
'Meta': {
'object_name': 'Rule'
},
'content_type':
('django.db.models.fields.related.ForeignKey', [], {
'to': "orm['contenttypes.ContentType']"
}),
'dynamic_fields': ('django_fields.fields.PickleField', [], {}),
'group_object_id': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'}),
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
'key': ('django.db.models.fields.CharField', [], {'max_length': '50'}),
'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
'secondary_object_id': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0', 'db_index': 'True'})
'group_object_id': ('django.db.models.fields.PositiveIntegerField', [], {
'db_index': 'True'
}),
'id': ('django.db.models.fields.AutoField', [], {
'primary_key': 'True'
}),
'key': ('django.db.models.fields.CharField', [], {
'max_length': '50'
}),
'name': ('django.db.models.fields.CharField', [], {
'max_length': '100'
}),
'secondary_object_id':
('django.db.models.fields.PositiveIntegerField', [], {
'default': '0',
'db_index': 'True'
})
}
}

complete_apps = ['dynamic_manipulation']
complete_apps = ['dynamic_manipulation']
6 changes: 4 additions & 2 deletions dynamic_manipulation/models.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,9 @@ class ManipulationLog(models.Model):
trigger_model_id = models.PositiveIntegerField(db_index=True)
trigger_model = generic.GenericForeignKey(fk_field='trigger_model_id', ct_field='trigger_content_type')

side_effect_content_type = models.ForeignKey('contenttypes.ContentType', related_name="manipulation_side_effects", null=True, blank=True)
side_effect_content_type = models.ForeignKey(
'contenttypes.ContentType', related_name="manipulation_side_effects", null=True, blank=True
)
side_effect_model_id = models.PositiveIntegerField(db_index=True, null=True, blank=True)
side_effect_model = generic.GenericForeignKey(fk_field='side_effect_model_id', ct_field='side_effect_content_type')

Expand All @@ -22,4 +24,4 @@ class ManipulationLog(models.Model):

def clean(self):
if not self.side_effect_uri and not self.side_effect_model:
raise ValidationError("Side effect URI -or- Model is required.")
raise ValidationError("Side effect URI -or- Model is required.")
Loading
Loading