سلام دوستان من پکیج passport رو روی پروژه ام نصب کردم و می خوام هنگام register یک passport token به اون کاربر تعلق بگیره
$user = User::create([
'name' => $Data['name'],
'email' => $Data['email'],
'password' => bcrypt($Data['password']),
'api_token' => ?
]);
البته یک روش بلدم اونم اینه
$token = auth()->user()->createToken('Api Token')->accessToken;
ولی این روش نیاز هست کاربر ورود کرده باشه ولی در هنگام register کاربر هنوز ورود نکرده .
ممنون می شم کمک کنید
فکر کنم کدی که نوشتید رو خودتون درک نکردید.
کاربرتون رو دارید تازه create میکنید بعد میزنید auth()->user() خوب هنوز کاربر ساخته نشده و لاگین نکرده چطوری بیاد برای token بسازه اصلا.
$user = User::create([
'name' => $Data['name'],
'email' => $Data['email'],
'password' => bcrypt($Data['password']),
]);
$user->update([
'api_token' => $user->createToken('Api Token')->accessToken
])
سلام
نه نیاز نیست که حتما لاگین کرده باشه ، اصلا پاسپورت برای زمانی هست که کاربر به روش معمول (کوکی و شسن) نمیتونه لاگین کنه مثل api ها.
همین ۲ تا کدی که نوشتین رو پشت سر هم بذارین درست میشه
ولی اینکار بهم ارور می ده
Call to a member function createToken() on null
کد هم شامل موارد زیر هست
$user = User::create([
'name' => $Data['name'],
'email' => $Data['email'],
'password' => bcrypt($Data['password']),
'api_token' => auth()->user()->createToken('Api Token')->accessToken,
]);
فکر کنم کدی که نوشتید رو خودتون درک نکردید.
کاربرتون رو دارید تازه create میکنید بعد میزنید auth()->user() خوب هنوز کاربر ساخته نشده و لاگین نکرده چطوری بیاد برای token بسازه اصلا.
$user = User::create([
'name' => $Data['name'],
'email' => $Data['email'],
'password' => bcrypt($Data['password']),
]);
$user->update([
'api_token' => $user->createToken('Api Token')->accessToken
])
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟