回答編集履歴

1

コメントに対する追記

2019/11/22 12:18

投稿

katsuko
katsuko

スコア3536

test CHANGED
@@ -31,3 +31,43 @@
31
31
  これは、「`from ..decorators.login import login`」の間違えではないですか。
32
32
 
33
33
  どちらがあっているかはともかく、基本的にこのような相対importでimportする事をおすすめします。
34
+
35
+
36
+
37
+ ---
38
+
39
+ > こちらに関してですが、私もそうじゃないかなと思ったのですが
40
+
41
+ > 「from .decorators.login import login」じゃないとエラーが消えないんですよね・・・ウーム
42
+
43
+
44
+
45
+ ちょっと考えづらいですね。
46
+
47
+ 絶対importであれば、「PYTHONPATH」を設定するなり、「sys.path」をいじるなり考えられますが、相対importでそのような事はちょっと。
48
+
49
+ (importのローダを作れば無理やりできなくもなさそうだけど、意味があるとは思えない)
50
+
51
+
52
+
53
+ とりあえず、
54
+
55
+
56
+
57
+ ```python
58
+
59
+ # もしくは
60
+
61
+ from .decorators.login import login
62
+
63
+
64
+
65
+ from .decorators import login as login_module
66
+
67
+ print('%s, %s' % (repr(__file__), repr(login_module.__file__)))
68
+
69
+ ```
70
+
71
+
72
+
73
+ として、import元・import先のモジュールが想定しているモジュールか、確認されてはいかがですか。