python - Cannot create form field for 'country' yet, because its related model 'address.Country' has not been loaded yet (when upgrading Django 1.8 to 1.9) -
i'm developing subscription site includes 'signup' app. i'm using django-oscar shop one-off purchases , using useraddress classes across whole site. however, address , username/email forms on same page @ subscription signup use temporary custom modelform based on abstractaddress specific fields in signup/forms.py:
# signup/forms.py oscar.apps.address.abstract_models import abstractaddress class customaddressform(modelform): class meta: """ using abstractaddress because useraddress requires user , there none when signup form displayed. useraddress instance created later, using user object created after request.post. """ model = abstractaddress fields = ['line1', 'line2', 'line4', 'state', 'postcode', 'country']
with installed_apps:
# settings.py oscar import get_core_apps installed_apps = [ ... 'signup', ... ] + get_core_apps()
it's been working fine in django 1.8 i've tried upgrading 1.9 prior deploying , following error message:
file "path/to/python3.4/django/db/models/fields/related.py", line 942, in formfield(self.name, self.remote_field.model)) cannot create form field 'country' yet, because related model 'address.country' has not been loaded yet
presumably move custom modelform django-oscar core rather not.
i've seen this question model in case called in form's meta fields list string 'country', i'm not sure how import country
model here.
i can't find sign of modelforms having changed in django 1.9. or know why form work in 1.8 not 1.9?
Comments
Post a Comment