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

مخفی کردن یک پست یا محصول

سلام دوستان من میخام وقتی تو پنل ادمین پست یا محصولی رو غیرفعال میکنم تو فرانت اون محصول یا پست مورد نظر مخفی بشه
چندتا راه تست کردم ولی خب اشتباه بود و به نتیجه نرسیدم
این برای پنل ادمین هست که اکیه کار میکنه حالا چطوری تو فرانت باید اعمال بشه؟


                        @foreach($blogs as $blog)

                            @switch($blog->status)
                                @case(1)
                                @php
                                    $url = route('admin.blogs.status',$blog->id);
                                    $status = '<a href="'.$url.'" class="badge badge-success">فعال</a>' @endphp
                                @break
                                @case(0)
                                @php
                                    $url = route('admin.blogs.status',$blog->id);
                                    $status = '<a href="'.$url.'" class="badge badge-warning">غیر فعال</a>' @endphp
                                @break
                                @default
                            @endswitch
                        @endforeach

ثبت پرسش جدید
سبحان دادخواه
تخصص : دانشجوی برنامه نویسی :)
@SobhanDadkhah 4 سال پیش مطرح شد
1

@wxyz
سلام. وقتی میخواین فقط پست های فعال رو نمایش بدین نیازی نیست پست های غیر فعال رو هم بگیرید و به فرانت فرستاده بشه و پیمایش بشه توی حلقه.
میتونید موقع کوئری زدنتون داخل کنترلر کوئری رو محدود به status کنید :

$latestPosts = Post::whereStatus(1)->latest()->get();
// latest : مرتب سازی از جدیدترین به قدیمی ترین

مورد بعدی اینکه نیازی نیست ساختار switch به کار ببرید داخل ویو. با همون حلقه میتونید هندل کنید چون فقط دارید پست های اکتیو رو میگیرید:

@foreach($posts as $post)
    <div class="title">{{ $post->title }}</div>
    <div class="body">{{ $post->body }}</div>
    .
    .
    .
@endforeach

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


ممدو
تخصص : در حال یادگیری ...
@mamado 4 سال پیش مطرح شد
0

سلام دوست خوبم
خب طبیعتا توی اون جدول ک ساختی یه فیلد به نام status یا همون وضعیت داری حالا میتونه دو تا مقدار بگیره یکی 0 به معنی اینه ک غیرفعاله و مقدار 1 به اینه ک فعال هس زمانی ک توی پنل ادمین پستی رو غیرفعال میکنید وضعیت اون به 0 تغییر میکنه و در قسمت فرانت پروژت موقعی ک میخوای پستا رو به نمایش بزاری با یه دستور ساده میای میگی اونایی رو نمایش بده ک وضعیت یا status اونها 1 باشه همین امیدوارم جواب سوالتو داده باشم باز اگه سوال داری خوشحال میشم کمکت بکنم 🙂


Paradox
تخصص : در حال یادگیری
@paradox 4 سال پیش مطرح شد
0

@mamado
سلام مجدد دوست عزیز
بله فیلد استاتوس 0 و 1 قرار دادم ولی کار نکرد
نمیدونم دقیقا از چه کدی استفاده کنم

                            @switch($blog->status)
                                @case(1)
                                @php

                                 محتویات پست 

                                @break
                                @case(0)
                                @php

                                 محتویات پست 

                                @break
                                @default
                            @endswitch

من به این صورت نوشتم که اشتباه و به جواب نرسیدم
تو سوییچ نباید قرار بدم ؟


محمد رحیمی انگیز
تخصص : مدیر فناوری اطلاعات
@rahimiangiz 4 سال پیش مطرح شد
0

باسلام و شاد باش
توی مدل Blog یک فانکشن بساز که بررسی کنه اکتیوهست یا نه:

public function isActive(){
return $this->status;
}

حالا توی فرنت و نمایش بلاگها یک شرط میزاریم

@if( $blog->isActive()){

//show blogs
}

سبحان دادخواه
تخصص : دانشجوی برنامه نویسی :)
@SobhanDadkhah 4 سال پیش مطرح شد
1

@wxyz
سلام. وقتی میخواین فقط پست های فعال رو نمایش بدین نیازی نیست پست های غیر فعال رو هم بگیرید و به فرانت فرستاده بشه و پیمایش بشه توی حلقه.
میتونید موقع کوئری زدنتون داخل کنترلر کوئری رو محدود به status کنید :

$latestPosts = Post::whereStatus(1)->latest()->get();
// latest : مرتب سازی از جدیدترین به قدیمی ترین

مورد بعدی اینکه نیازی نیست ساختار switch به کار ببرید داخل ویو. با همون حلقه میتونید هندل کنید چون فقط دارید پست های اکتیو رو میگیرید:

@foreach($posts as $post)
    <div class="title">{{ $post->title }}</div>
    <div class="body">{{ $post->body }}</div>
    .
    .
    .
@endforeach

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


Paradox
تخصص : در حال یادگیری
@paradox 4 سال پیش مطرح شد
1

@rahimiangiz
@SobhanDadkhah
خیلی خیلی ممنونم


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

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