回答編集履歴
1
手元で挙動を見返して回答を整形(コードの変更点あり)
test
CHANGED
@@ -1,10 +1,30 @@
|
|
1
|
-
|
1
|
+
## 整理
|
2
|
-
|
3
|
-
その上で、`client.login`側で求められているのは生パスワードであるため、`User.password`を渡しても不一致になるのではないでしょうか。
|
4
2
|
|
5
3
|
|
6
4
|
|
5
|
+
手元で挙動を見返した範囲では、コード上の問題点と思われるのは次の2箇所です。
|
6
|
+
|
7
|
+
|
8
|
+
|
7
|
-
|
9
|
+
### `login`時に必要なのはユーザー名
|
10
|
+
|
11
|
+
|
12
|
+
|
13
|
+
現状`self.cleint.login`でメールアドレスとパスワードを渡していますが、渡す必要があるのはユーザー名とパスワードです。
|
14
|
+
|
15
|
+
|
16
|
+
|
17
|
+
### `password`に生パスワードを渡せていない
|
18
|
+
|
19
|
+
|
20
|
+
|
21
|
+
`User`オブジェクトが保持している`password`ではなく、あくまで保存用に不可逆変換したデータです。
|
22
|
+
|
23
|
+
`self.client.login`には生パスワードを渡す必要があります。
|
24
|
+
|
25
|
+
|
26
|
+
|
27
|
+
## 回答となるコード例
|
8
28
|
|
9
29
|
|
10
30
|
|
@@ -44,8 +64,8 @@
|
|
44
64
|
|
45
65
|
- self.client.login(email=self.test_user.email, password=self.test_user.password)
|
46
66
|
|
47
|
-
+ # 生パスワードを
|
67
|
+
+ # ユーザー名と生パスワードを指定する
|
48
68
|
|
49
|
-
+ self.client.login(em
|
69
|
+
+ self.client.login(username=self.test_user.username, password='user1234')
|
50
70
|
|
51
71
|
```
|