我已經在Django站點(https://docs.djangoproject.com/en/1.4/intro/tutorial01/)上學習了教程(第1部分和第2部分),並設法創建了一對文件夾並連接到我的網站。我的應用程序被稱爲 '應用',所以我的文件夾結構看起來有點像:Django創建的models.py文件是否可以被另一個python文件用來填充數據庫?
- mainFolder
- --- __ 初始化 __的.py
- ---test.py
- --- djangoSite(由Django的創建)
- ------ manage.py
- ------ djangosite
- ---------其他.py文件
- ------ 應用
- --------- - __ 初始化 __的.py
- --------- models.py
- ---------其他.py文件
我改變了models.py文件是s類似於:
class Result(models.Model):
options = models.CharField(max_length = 1000, unique = False)
reverse = models.DecimalField(decimal_places = 6, max_digits = 12)
test.py當前在其他一些類上運行了幾個測試。我想要的是我的test.py類運行這些測試並將結果保存到數據庫中(在 的列中並反向)。我希望在我的test.py類中做這樣的事情:
import models.py
if __name__ == "__main__":
optionResult = someTestsThatRuns
reverseResult = someOtherTestThatRuns
models.Result c;
c.options = optionResult
c.reverse = reverseResult
我想要最後兩行將結果保存到數據庫中。 這可能嗎?我將如何從app文件夾中導入models.py?
謝謝
編輯: 當我說someTestsThatRuns,這些都不是單元測試。它們實際上是一個函數,它返回一個列表和一些帶有'PASS'或'FAIL'的字符串。對不起
嗨大衛,並感謝您的第一反應!我實際上正在考慮按照你的建議(並且在發佈這個問題之前試過),但是我從models.py文件中聽到一個錯誤,說'第4行:從django.db導入模型' - ImportError:No module named db' =/ – SaiyanGirl
另外,我在從您寄給我的網站閱讀後添加了編輯。我的測試不是單元測試,也不測試Django站點;它們是運行一些C++類並在字符串和列表中獲得一些結果的函數。 ( – SaiyanGirl
)轉到命令行,啓動python,然後輸入import django.db。看看它是否會引發錯誤。如果它引發錯誤,Python不會在其搜索路徑中拾取django軟件包 在命令行中,import sys和print sys.path會告訴你Python搜索路徑上的目錄是什麼,Django應該安裝在其中一個目錄下,通常在site-packages中 如果import django.db從命令行工作,確保正確的Python解釋器選擇在你正在工作的任何開發環境中。 –