#python #django #import
#python #django #импорт
Вопрос:
Я пытаюсь следовать руководству по django и создать две таблицы, в которых уникальный ключ table1 может несколько раз появляться в table2 (у которого другой уникальный ключ)
CREATE TABLE "apples" (
"id1" integer NOT NULL PRIMARY KEY,
"value1" varchar(400) NOT NULL,
)
;
CREATE TABLE "oranges" (
"id2" integer NOT NULL PRIMARY KEY,
"id1" integer NOT NULL REFERENCES "MyApp_apples" ("id"),
"value2" datetime NOT NULL,
)
при попытке запустить:
import package
from package import MyApp
from package.MyApp import models
from package.MyApp import apples, oranges
p = apples.objects.get(id=1)
p.oranges_set.create(value2="2168164000000")
Я получаю стек ошибок (я публикую только конец, если вам нужно больше, скажите мне, пожалуйста):
File "/usr/lib/pymodules/python2.7/django/utils/translation/trans_real.py", line 162, in _fetch
app = import_module(appname)
File "/usr/lib/pymodules/python2.7/django/utils/importlib.py", line 35, in import_module
__import__(name)
ImportError: No module named MyApp
Я предполагаю, что это проблема с импортом, но как мне ее решить?
Комментарии:
1. Можете ли вы рассказать нам что-нибудь о задействованных файлах / папках?
Ответ №1:
Если package
это название проекта и MyApp
приложение для этого проекта, вам не нужно импортировать пакет в свои файлы, вы можете просто:
from MyApp.models import apples, oranges
p = apples.objects.get(id=1)
...
Это тоже ошибка:
from MyApp import models
from MyApp import apples, oranges // ImportError
apples
и oranges
находятся внутри вашего models.py
Возможно, вам также нужно прочитать о модулях и пакетах.
Надеюсь, это поможет!