質問編集履歴
1
$this->Auth->user('id')が取得できないではなく、情報にアクセスできないという表現に変更。
test
CHANGED
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
CakePHP2.xでログインしたユーザの情報にアクセスしたい
|
test
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
###
|
1
|
+
### CakePHP2.xでログインしたユーザの情報にアクセスしたい
|
2
2
|
|
3
3
|
|
4
4
|
|
@@ -10,21 +10,25 @@
|
|
10
10
|
|
11
11
|
新規投稿をした時、今ログインしているユーザのID(=投稿者のID)を一緒に登録させたいですが
|
12
12
|
|
13
|
-
$this->Auth->user('id')
|
14
|
-
|
15
|
-
|
13
|
+
うまく登録することができません。
|
14
|
+
|
15
|
+
|
16
16
|
|
17
17
|
|
18
18
|
|
19
19
|
### 発生している問題・エラーメッセージ
|
20
20
|
|
21
|
-
ログインしている
|
21
|
+
ログインしているユーザの情報にアクセスをし、
|
22
|
+
|
22
|
-
|
23
|
+
新規投稿をするときに、一緒にuser_idも登録させたいです。
|
24
|
+
|
25
|
+
|
26
|
+
|
27
|
+
しかし、[この方法](https://book.cakephp.org/2/ja/core-libraries/components/authentication.html#id17)を参考に
|
28
|
+
|
29
|
+
$this->request->data['Post']['user_id'] = $this->Auth->user('id');
|
30
|
+
|
23
|
-
|
31
|
+
とすると、user_idはNULLとして登録をされてしまいます。
|
24
|
-
|
25
|
-
NULL
|
26
|
-
|
27
|
-
になってしまっています。
|
28
32
|
|
29
33
|
|
30
34
|
|
@@ -416,19 +420,23 @@
|
|
416
420
|
|
417
421
|
|
418
422
|
|
419
|
-
$this->Auth->user('id')
|
423
|
+
$this->request->data['Post']['user_id'] = $this->Auth->user('id');
|
420
|
-
|
424
|
+
|
421
|
-
では
|
425
|
+
では登録ができませんが、
|
422
426
|
|
423
427
|
$user = $this->Auth->user('id');
|
424
428
|
|
425
|
-
|
429
|
+
$this->request->data['Post']['user_id'] = $user['id'];
|
426
|
-
|
430
|
+
|
427
|
-
とすると、
|
431
|
+
とすると、user_idを登録することができます。
|
432
|
+
|
433
|
+
|
434
|
+
|
428
|
-
|
435
|
+
[CakePHP $this->Auth->user('フィールド')が取得できない時にチェックすべきこと](https://qiita.com/Takashi_Noboru/items/bcbd68624f1e25ebeb3d)
|
436
|
+
|
429
|
-
|
437
|
+
というサイトを参考に、
|
430
|
-
|
438
|
+
|
431
|
-
ログイン時に
|
439
|
+
ログイン時に渡す引数を間違えているのではないかと思い
|
432
440
|
|
433
441
|
View/Users/login.ctp
|
434
442
|
|
@@ -440,7 +448,11 @@
|
|
440
448
|
|
441
449
|
$this->Auth->login()
|
442
450
|
|
443
|
-
に引数は設定していませんので、階層がおかしくなることは
|
451
|
+
に引数は設定していませんので、階層がおかしくなることはないのではないかと考えています。
|
452
|
+
|
453
|
+
|
454
|
+
|
455
|
+
|
444
456
|
|
445
457
|
|
446
458
|
|
@@ -458,13 +470,17 @@
|
|
458
470
|
|
459
471
|
###
|
460
472
|
|
473
|
+
何が原因で
|
474
|
+
|
461
|
-
|
475
|
+
$this->request->data['Post']['user_id'] = $this->Auth->user('id');
|
476
|
+
|
462
|
-
|
477
|
+
これでuser_idが代入できないのか、
|
478
|
+
|
463
|
-
どうしたら
|
479
|
+
どうしたら代入できるようになるのか教えていただきたいです。
|
464
|
-
|
465
|
-
|
466
|
-
|
480
|
+
|
481
|
+
|
482
|
+
|
467
|
-
「試したこと」で記載した方法では、
|
483
|
+
「試したこと」で記載した方法では、自体は可能ですが
|
468
484
|
|
469
485
|
ID取得を他の機能でも使いたいため、行数が多くなってしまうのを避けたいです。
|
470
486
|
|