Skip to content

Commit

Permalink
Use correct model versions for field operations
Browse files Browse the repository at this point in the history
  • Loading branch information
andrewgodwin committed May 30, 2013
1 parent e6ba63d commit 8d81c6b
Showing 1 changed file with 10 additions and 12 deletions.
22 changes: 10 additions & 12 deletions django/db/migrations/operations/fields.py
Expand Up @@ -15,14 +15,13 @@ def state_forwards(self, app_label, state):
state.models[app_label, self.model_name.lower()].fields.append((self.name, self.instance))

def database_forwards(self, app_label, schema_editor, from_state, to_state):
app_cache = to_state.render()
model = app_cache.get_model(app_label, self.model_name)
schema_editor.add_field(model, model._meta.get_field_by_name(self.name)[0])
from_model = from_state.render().get_model(app_label, self.model_name)
to_model = to_state.render().get_model(app_label, self.model_name)
schema_editor.add_field(from_model, to_model._meta.get_field_by_name(self.name)[0])

def database_backwards(self, app_label, schema_editor, from_state, to_state):
app_cache = from_state.render()
model = app_cache.get_model(app_label, self.model_name)
schema_editor.remove_field(model, model._meta.get_field_by_name(self.name)[0])
from_model = from_state.render().get_model(app_label, self.model_name)
schema_editor.remove_field(from_model, from_model._meta.get_field_by_name(self.name)[0])


class RemoveField(Operation):
Expand All @@ -42,11 +41,10 @@ def state_forwards(self, app_label, state):
state.models[app_label, self.model_name.lower()].fields = new_fields

def database_forwards(self, app_label, schema_editor, from_state, to_state):
app_cache = from_state.render()
model = app_cache.get_model(app_label, self.model_name)
schema_editor.remove_field(model, model._meta.get_field_by_name(self.name)[0])
from_model = from_state.render().get_model(app_label, self.model_name)
schema_editor.remove_field(from_model, from_model._meta.get_field_by_name(self.name)[0])

def database_backwards(self, app_label, schema_editor, from_state, to_state):
app_cache = to_state.render()
model = app_cache.get_model(app_label, self.model_name)
schema_editor.add_field(model, model._meta.get_field_by_name(self.name)[0])
from_model = from_state.render().get_model(app_label, self.model_name)
to_model = to_state.render().get_model(app_label, self.model_name)
schema_editor.add_field(from_model, to_model._meta.get_field_by_name(self.name)[0])

0 comments on commit 8d81c6b

Please sign in to comment.