簡體   English   中英

從另一個 python 腳本訪問 django 數據庫

[英]Accessing django database from another python script

我有一個 Django 項目,我需要訪問該數據庫(模型)中的信息。 這是我的目錄層次結構-

在此處輸入圖像描述

我已經看到了很多關於這個主題的問題,但我嘗試的一切都沒有奏效。 例如-

import models
# gives me this error-

django.core.exceptions.ImproperlyConfigured: Requested setting INSTALLED_APPS, but settings are not configured. You must either define the environment variable DJANGO_SETTINGS_MODULE or call settings.configure() before accessing settings.

如果我嘗試這樣做,我會收到另一個錯誤-

import os
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "OrAvivi.OrAvivi.settings")
import models
# gives me this error-
django.core.exceptions.AppRegistryNotReady: Apps aren't loaded yet.

它只是繼續......

我是一個新手,我大部分時間都在這上面度過,所以我會很感激一些幫助!

好的,我找到了有史以來最好的方法! 導入這些模塊-

import sqlite3
from sqlite3 import Error

然后,查看您的數據庫中有哪些表並查看您想要的表的名稱(您可以在此處執行 - 在此處輸入鏈接描述

然后只需執行此操作即可查看您擁有的信息!

def create_connection():
    """ create a database connection to the SQLite database
        specified by the db_file
    :param db_file: database file
    :return: Connection object or None
    """
    conn = None
    try:
        conn = sqlite3.connect(DB_PATH)
    except Error as e:
        print(e)

    return conn


def select_all_tasks(conn):
    """
    Query all rows in the tasks table
    :param conn: the Connection object
    :return:
    """
    cur = conn.cursor()
    cur.execute("SELECT * FROM to_excel_groups")

    rows = cur.fetchall()

    for row in rows:
        print(row)

這是它在 main() 中的樣子:

DB_PATH = r'C:\Users\karin\PycharmProjects\Fiverr\OrAvivi\db.sqlite3'
conn = create_connection()
select_all_tasks(conn)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM