teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

コメントに対する追記

2019/11/22 12:18

投稿

katsuko
katsuko

スコア3601

answer CHANGED
@@ -14,4 +14,24 @@
14
14
  ```
15
15
 
16
16
  これは、「`from ..decorators.login import login`」の間違えではないですか。
17
- どちらがあっているかはともかく、基本的にこのような相対importでimportする事をおすすめします。
17
+ どちらがあっているかはともかく、基本的にこのような相対importでimportする事をおすすめします。
18
+
19
+ ---
20
+ > こちらに関してですが、私もそうじゃないかなと思ったのですが
21
+ > 「from .decorators.login import login」じゃないとエラーが消えないんですよね・・・ウーム
22
+
23
+ ちょっと考えづらいですね。
24
+ 絶対importであれば、「PYTHONPATH」を設定するなり、「sys.path」をいじるなり考えられますが、相対importでそのような事はちょっと。
25
+ (importのローダを作れば無理やりできなくもなさそうだけど、意味があるとは思えない)
26
+
27
+ とりあえず、
28
+
29
+ ```python
30
+ # もしくは
31
+ from .decorators.login import login
32
+
33
+ from .decorators import login as login_module
34
+ print('%s, %s' % (repr(__file__), repr(login_module.__file__)))
35
+ ```
36
+
37
+ として、import元・import先のモジュールが想定しているモジュールか、確認されてはいかがですか。