【问题标题】:How can I operate Django-ORM model singlely?如何单独操作 Django-ORM 模型?
【发布时间】:2019-08-05 04:56:39
【问题描述】:

我的目录结构如下:

├─bin
├─conf
│  └─django_settings.py
├─docs
├─log
└─src
   └─main.py
   └─models.py

在我的main.py 中,我想使用django-orm 从我的MySQL 表campaign_plan 中读取数据,但是当我尝试运行main.py 时,我得到了这个错误:

django.core.exceptions.AppRegistryNotReady:应用尚未加载。

我怎样才能成功获得正确的数据?

models.py

​​>
from django.db import models

class CampaignPlan(models.Model):
    campaign_id = models.CharField(max_length=64, blank=True, null=True)
    rule_id = models.IntegerField(blank=True, null=True)
    status = models.IntegerField(blank=True, null=True)
    account_id = models.CharField(max_length=64, blank=True, null=True)

    class Meta:
        managed = False
        db_table = 'campaign_plan'
        unique_together = (('campaign_id', 'rule_id', 'status'),)

main.py

​​>
import sys, os

BASE_DIR = os.path.dirname(os.path.dirname(__file__))
sys.path.append(os.path.join(BASE_DIR,'conf'))
sys.path.append(os.path.join(BASE_DIR, "src"))
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "django_settings")

from models import CampaignPlan


class AutoManagementService(object):

    def __init__(self, campaign_plan):
        self.campaign_plan = campaign_plan

    def run(self):
        pass

campaign_plans = CampaignPlan.objects.all()

【问题讨论】:

  • Django需要加载设置模块,检查thisout
  • 谷歌搜索错误消息会产生解决方案......

标签: python django django-orm


【解决方案1】:

你需要设置 Django:

import django

django.setup()

【讨论】:

  • 还需要一个应用程序
猜你喜欢
  • 2021-12-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-10-23
  • 1970-01-01
  • 2010-10-30
  • 2011-12-05
相关资源
最近更新 更多