[請益] Yii 2.0 抓登入中的user id

看板PHP作者 (也無風雨也無晴)時間9年前 (2015/04/20 10:21), 9年前編輯推噓2(2021)
留言23則, 6人參與, 最新討論串1/1
又是我來問問題了Orz。 我目前在使用的是yii framework 2。 我利用了Gii 的功能產生了一個Post的系統,也把權限控制放上去了。 由於是Gii產生的格式,所以他自動將Author_id的輸入地方給做了出來。 但是我的目標是讓使用者登入之後才可以發文,應該是在發文的地方不用另外填寫 author_id這個項目,而是讓他自己去抓登入中的 id來存進db裡面才對。 首先我先把view內的author欄位給拿掉。 然後我在controller內把action的地方修改成了: public function actionCreate(){ if ($model->load(Yii::$app->request->post())) { $model->author_id = Yii::$app()->user->getId(); ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ <=我的問題 $model->save(); 可是好像不行.. Orz 我看了一下我的common\models\User裡面有getID這個function,可是還是讀不到 有沒有人能夠提示我一下我不是弄錯了哪個部分呢? -- ︳ | ︳ ◤▼ ◣|▂▁ψcl3bp6 ▉▊ | ▉◢◤▃ / ▆▅▆ ˙ 学 電 ◢◤ の 磁砲 ▊ ▲ -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.249.112.154 ※ 文章網址: https://www.ptt.cc/bbs/PHP/M.1429496516.A.D9D.html

04/20 10:33, , 1F
到底是author還是auther
04/20 10:33, 1F

04/20 10:36, , 2F
錯字錯字xD 我修改一下
04/20 10:36, 2F
※ 編輯: kamihane (111.249.112.154), 04/20/2015 10:36:35

04/20 10:45, , 3F
阿~還以為只是屬性拼錯字 改過來就好了 >_<
04/20 10:45, 3F

04/20 10:48, , 4F
我問了一下前輩,他說要我去看看UserIdentity.php
04/20 10:48, 4F

04/20 10:49, , 5F
但是沒有這個檔阿 囧
04/20 10:49, 5F

04/20 11:05, , 6F
還是其實不能這樣直接呼叫User這個Class呢
04/20 11:05, 6F

04/20 12:06, , 7F
還是都call不到ID.. Orz
04/20 12:06, 7F

04/20 12:17, , 8F
ㄇ有 我那是猜的 X(
04/20 12:17, 8F

04/20 12:21, , 9F
好吧Orz,我查到的相關資料都是1.0版本的
04/20 12:21, 9F

04/20 12:21, , 10F
感覺是我CALL錯地方了,所以拿不到值
04/20 12:21, 10F
如果我在最上面放use common\User; 然後下面這邊直接把 $model->author_id = User.php裡面的user class內的 getId function呢? 好像應該是這樣,但是我不知道怎麼連過去,我用user.getId(); 一看就錯了Orz ※ 編輯: kamihane (111.249.112.154), 04/20/2015 12:24:14

04/20 12:34, , 11F
好撞牆的感覺,弄了兩小時了Orz
04/20 12:34, 11F

04/20 13:15, , 12F
Yii::「$app()」?
04/20 13:15, 12F

04/21 00:42, , 13F
要找目前登錄的使用者要用useridentity喔
04/21 00:42, 13F

04/21 00:45, , 14F
有設auth的話,就$id = Yii::$app->user->identity->id;
04/21 00:45, 14F

04/21 00:47, , 15F
如果你用advance template,到common/models/user.php看
04/21 00:47, 15F

04/21 03:49, , 16F
OHNO 回訊息竟然誤貼到上面去了 XO
04/21 03:49, 16F

04/21 10:25, , 17F
xD 我昨天先跳過這個地方了 (遮臉,做起東西XD
04/21 10:25, 17F

04/21 10:25, , 18F
其他東西
04/21 10:25, 18F

04/21 11:14, , 19F
當前user id你那樣取沒錯阿,拿不到id要檢查是否有登入
04/21 11:14, 19F

04/21 11:15, , 20F
Yii::$app->user->getId();
04/21 11:15, 20F

04/21 13:35, , 21F
情況很怪中ORZ
04/21 13:35, 21F

04/21 22:16, , 22F
忘了說xD我解決了~
04/21 22:16, 22F

04/21 22:17, , 23F
謝謝大家的回應xD
04/21 22:17, 23F
文章代碼(AID): #1LD6B4sT (PHP)