JBolouri
4 سال پیش توسط JBolouri مطرح شد
5 پاسخ

ویرایش دو فیلد جدول از طریق Middleware

سلام دوستان..

یه میدل ور دارم که میخوام از طریقش تاریخ آخرین فعالیت و همچنین آدرس آی پی آخرین فعالیت کاربر رو بگیرم و توی جدولم فیلدای مربوط به این دوتا رو آپدیت کنم..

و بعدش این میدل ور رو روی روت های مربوطه بذارم..

وقتی یوزر جدید درست میکنم این کار رو میکردم:

$user = new User;

وقتی هم که میخواستم ویرایش کنم یوزر رو پاس میدادم به تابع مربوطه داخل کنترلر و مدل یوزر رو توی پارامترای ورودی تابع به این صورت تعریف میکردم و ازش استفاده میکردم..

public function profileImageUpload(Request $request , User $user){

ولی توی میدل ور چجوری این آبجکت یوزر رو بسازم؟ که بعد از تغییرات سیوش کنم؟
چون اون کاربر از قبل تو جدول وجود داره به روش اول که قاعدتا نیست درسته؟
یخورده گیج شدم. ممنون میشم راهنماییم کنید


ثبت پرسش جدید
coarad supp
تخصص : برنامه نویس لاراول
@coaradsupp 4 سال پیش مطرح شد
0

منظورتون این هست که کاربر فعلی رو چطوری بگیرین و این فیلدها رو واسش ذخیره کنید؟

توی همون متد هندل کاربر فعلی رو به این شکل بگیرین

auth()->user()

و ذخیره کنید


coarad supp
تخصص : برنامه نویس لاراول
@coaradsupp 4 سال پیش مطرح شد
0

سلام

اگه میخواین که تاریخ فعالیت کاربر و ای پیشو بگیرید که داخل میدلویر کاربر فعلی رو میگیرد و از request هم ای پی و تاریخ فعلی رو میگیرید و ذخیره میکنید، بقیه کارهایی که کردین و متوجه نشدم، بیشتر توضیح بدین


JBolouri
@javadbolouri72 4 سال پیش مطرح شد
0

@coaradsupp

بله نحوه گرفتنشو بلدم مشکلم با ساخت آبجکت user برای دادن اطلاعات دوتا فیلد بهش و ذخیره کردنش هست..

فرض کنید این دوتا فیلد از کاربر رو میخوام تنظیم کنم و ذخیره کنم..

$user->last_ip

$user->last_activity

توی میدلور این مدل یوزر رو چجوری مشخص کنم؟ چون هیچ چیزی هم داخل constructor برای مدل یوزر ورودی ندارم..
ولی خب لاگین هستم و اطلاعات این کاربر رو داخل Auth دارم..


coarad supp
تخصص : برنامه نویس لاراول
@coaradsupp 4 سال پیش مطرح شد
0

منظورتون این هست که کاربر فعلی رو چطوری بگیرین و این فیلدها رو واسش ذخیره کنید؟

توی همون متد هندل کاربر فعلی رو به این شکل بگیرین

auth()->user()

و ذخیره کنید


JBolouri
@javadbolouri72 4 سال پیش مطرح شد
0

@coaradsupp

منظورتون اینه اینطوری انجامش بدم؟🤔

auth()->user()->last_ip = $lastIP;
auth()->user()->last_activity = $lastActivity;

auth()->user()->save();

JBolouri
@javadbolouri72 4 سال پیش مطرح شد
0

@coaradsupp

امتحان کردم درست شد.. ممنونم 🌷


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام