Here is a brief backstory. I am using the Mezzanine CMS for Django. I created some models that inherited from the Mezzanine models. This caused an issue in my Postgres database, where one object was present in two tables. When I would try searching my site for a post, I would not get results from one table.
So, here is where I believe I messed up. I reverted my models to how they were before this issue. This meant that there was still a table in my database for those models, so my search function still wouldn't work. I wanted this relation gone, so I did something very stupid and deleted the entire database. This was fine for my local development, because I just recreated the database and migrated.
When I try deploying this project of mine with the newly created postgres database onto DigitalOcean, I get to this command:
$ python manage.py createdb --nodata --noinput
which gives me the error:
psycopg2.errors.UndefinedColumn: column "page_image" of "pages_page" relation does not exist
LINE 1: UPDATE "pages_page" SET "page_image" = '', "keywords_string"...
I looked up a few threads on this error, and tried this solution that did not work:
python manage.py shell
>>> from django.contrib.contenttypes.models import ContentType
>>> ContentType.objects.all().delete()
I have also tried the suggestion in the error LINE 1: UPDATE "pages_page" SET "page_image" = '', "keywords_string"...
. The weird thing was, I saw the page_image
column inside the pages_page
table before running this command.
I do not know what code may be helpful in this case. I do not know how to troubleshoot this issue. How can I further troubleshoot this issue of mine?
I figured this issue out. It has something to do with the EXTRA_MODEL_FIELDS
option in the settings.py
file. I'm still not sure why that causes an issue, but here is my EXTRA_MODEL_FIELDS
code:
EXTRA_MODEL_FIELDS = (
(
...,
(
"mezzanine.pages.models.Page.page_image",
"ImageField",
(_("Featured Image"),),
{"blank": True, "upload_to": "uploads/blog"},
),
...
)
What I did that caused my issue to go away is as listed below:
createdb --nodata --noinput
command commented out.page_image
column was automatically addedNow everything works fine! I don't know how much help this answer might be, but I can always go more into depth if someone wants to chat about their issues.