shadi
3 سال پیش توسط shadi مطرح شد
1 پاسخ

درخواست راهنمایی: ثبت صحیح اطلاعات یک مدل در مدلی دیگر

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

if(Auth::check()){
if(!view::where('post_id',$post_id)->where('user_id',Auth::user()->id)->exists()){
view::insert(['post_id'=>$post_id,'user_id'=>Auth::user()->id]);
        }

با تشکر

ثبت پرسش جدید
محمدحسن یگانه
تخصص : Full-Stack Web Developer Freel...
@mhyeganeh 3 سال پیش مطرح شد
0

موضوعی که مطرح کردید رو به شکل های مختلفی میشه پیاده کرد و خیلی بستگی داره به نیازمندی های مشخص هر پروژه و اینکه تا چه حد خواسته باشیم دقیق کار بکنیم.
مثلا ایرادی که میشه به کد شما گرفت این هست که فقط در خصوص کاربران ثبت نام و لاگین کرده جواب میده. (که البته ممکنه دقیقا همون چیزی باشه که دنبالش هستید)
یا مثلا شاید در پروژه ای با بازدید خیلی بالا، نخواسته باشیم که به ازای هر بازدید از صفحه چندین کوئری فقط برای بررسی این موضوع به دیتابیس ارسال بشه...

یک راه دیگه اش میشه استفاده از cookie باشه و یا راه دیگه استفاده از session. بجای user_id از ip کاربر هم می‌تونید استفاده کنید که محدود به کاربران لاگین کرده نشید.

ولی در کل همین جوری هم خیلی بد نیست.

یک نکته حاشیه ای دیگه هم اینکه سعی کنید استانداردهای نام گذاری کلاس ها ومدل ها رو رعایت کنید تا کدتون خوانا تر بشه. مثلا حرف اول کلاس مدل ها باید با حرف بزرگ باشه: View ثانیا بهتره از اسامی که تقریبا توسط فریم ورک بصورت رزرو شده هستند استفاده نکنیم. جایگزینش مثلا میشه PostView یا PageView ...


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

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