问题解决:django模型查询报错,找不到数据库表

django项目,使用的postgresql数据库,建了多个模式,模型查询时一直默认查public的表

1. 问题

django.db.utils.ProgrammingError: relation "ip_management_app.table" does not exist

2. 代码:

python 复制代码
class IpTag(models.Model):
    id = models.AutoField(primary_key=True)
    update_time = models.BigIntegerField()
    user_id = models.IntegerField()
    tab_type = models.IntegerField(default=1)
    tag = models.CharField(max_length=150)
    prefix_id = models.IntegerField()

    class Meta:
        managed = False
        db_table = 'ip_tag'


IpTag.objects.all()

3. 解决方案

(1)使用的django2.0,settings文件中修改数据库配置,增加OPTIONS

python 复制代码
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql',
        'NAME': '',
        'USER': '',
        'PASSWORD': '',
        'HOST': 'localhost',
        'PORT': '5432',
        'OPTIONS': {
            'options': '-c search_path=ip_management_app,public'
        }
    }
}

(2)其他方案

python 复制代码
class IpTag(models.Model):
    id = models.AutoField(primary_key=True)
    update_time = models.BigIntegerField()
    user_id = models.IntegerField()
    tab_type = models.IntegerField(default=1)
    tag = models.CharField(max_length=150)
    prefix_id = models.IntegerField()

    class Meta:
        managed = False
        db_table = 'ip_management_app.ip_tag'


IpTag.objects.all()

修改db_table,有这样的解决方案,但是对我没有效果,不知是否django版本问题,有问题的可以都试下,第一种解决了我的问题

相关推荐
一阵寒风几秒前
ComfyUI本地部署指南
开发语言·人工智能·python
yixin1231 分钟前
【玩转全栈】----Django基本配置和介绍
数据库·django·sqlite
高洁017 分钟前
大模型架构演进:从Transformer到MoE
python·深度学习·机器学习·数据挖掘·知识图谱
zhangyueping83859 分钟前
4、MYSQL-DQL-基本查询
数据库·mysql
谁不学习揍谁!10 分钟前
基于python机器学习算法的农作物产量可视化分析预测系统(完整系统源码+数据库+详细文档+论文+详细部署教程+答辩PPT)获取方式
python·算法·机器学习
OPEN-Source15 分钟前
别为多 Agent 而多 Agent:一套实用的 Agent 架构选型指南
人工智能·python·agent·rag·deepseek
ID_1800790547328 分钟前
Python采集京东商品详情:基于官方API的规格与价格获取
开发语言·数据库·python
一次旅行28 分钟前
测开每日AI提效指令(Python+pytest专属)
python·pytest·测试总结
w_t_y_y28 分钟前
数据库连接池(一)HikariCP
数据库
大猫子的技术日记41 分钟前
Playwright 自动化测试入门指南:Python 开发者的端到端实战
开发语言·人工智能·python