احسان الهیاری

استفاده از if در فایل controller پرستاشاپ

سلام

من ماژولی برای نمایش لیست مشتری ها درست کردم ولی با مشکل نمایش تایید شده یا نشده برخورد کردم

این ماژول لیست مشتری ها و شماره موبایل هاشون رو در یک صفحه نمایش میده و قسمتی که مربوط به ورودیار هست رو valid بود رو با 1 و 0 نشون میده

امکان استفاده از if هم توی کنترلر پیدا کردم.

چه راهی برای نمایشش هست که مثل صفحه شماره موبایل ها در ورودیار تایید شده و نشده رو نشون بده؟

سیدهاشم افخمی

سلام

طبق توضیحاتی که دادید شما مقدار صفر و یک رو دارید و صرفا میخواید یک عبارت متنی مناسب به جای این مقدار نمایش بدید.

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

برای این کار در تابع سازنده کنترولر و متغیر fields_list باید برای ستون مدنظرمون اسم تابع callback رو اضافه کنیم.

برای مثال آرایه وضعیت تایید شماره موبایل در ورودیار به صورت زیر میشه:

$this->fields_list = array (
    'mobile_valid' => array(
        'title' => $this->l('تایید موبایل'),
        'callback' => 'displayTitleValid',
    )
);

همینطور که مشاهده میکنید مشخص کردیم که اسم تابع callback برای این متغیر displayTitleValid است.

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

public function displayTitleValid($value, $row)
{
    if ($value == 1) {
        return '<div class='badge badge-success'>تایید شده</div>';
    }

    return '<div class='badge badge-danger'>تایید نشده</div>';
}

دقت کنید شما در این تابع مقدار value دارید که میتونید پردازش مدنظرتون رو انجام بدید و یک خروجی مناسب داشته باشید.

به طور مثال میگم خیلی اوقات شما شناسه محصول یا مشتری رو دارید ولی از این ویژگی استفاده میکنید که به جای شناسه ، نام محصول یا نام مشتری رو نمایش بدید.

نکته : جناب الهیاری ممنون میشم از برچسب هایی بهتری در زمان ایجاد گفتگو استفاده کنید.

ایجاد گفتگو جدید

اگر سوالی دارید ، اگر چالشی در فروشگاه خود دارید ، می توانید گفتگو خود را ایجاد نمایید.

ایجاد گفتگو جدید

دوره های آموزشی

سبدخرید