sql >> Base de Datos >  >> RDS >> Mysql

Error "La relación no existe" después de transferir a PostgreSQL

Sí, Postgresql es una base de datos consciente de casos, pero Django es lo suficientemente inteligente como para saberlo. Convierte todos los campos y generalmente convierte el nombre del modelo a un nombre de tabla en minúsculas. Sin embargo, el verdadero problema aquí es que el nombre de su modelo tendrá el prefijo del nombre de la aplicación. generalmente los nombres de las tablas de django son como:

<appname>_<modelname>

Puede averiguar qué es exactamente:

from myapp.models import UserProfile
print (UserProfile._meta.db_table)

Obviamente, esto debe escribirse en el shell de django, que es invocado por ./manage.py shell el resultado de esta declaración de impresión es lo que debe usar en su consulta.