0 follower

שמירת עמוד במטמון

שמירת עמוד במטמון מתייחס לשמירת כל התוכן של עמוד שלם במטמון. שמירת עמוד יכולה להתבצע במקומות שונים. לדוגמא, על ידי בחירת כותרת עמוד מתאימה, הדפדפן של הלקוח יכול לשמור את העמוד הנצפה כרגע לפרק זמן מוגבל. האפליקציה עצמה יכולה לשמור את תוכן העמוד במטמון גם כן. בתת נושא זה, אנו נתמקד על האפשרות השנייה שכרגע הצגנו.

שמירת עמוד במטמון יכולה להחשב כמצב מיוחד של שמירת חלק מהתצוגה במטמון‫.‬ מאחר ותוכן העמוד בדרך כלל נוצר על ידי צירוף תבנית לתצוגה, זה לא יעבוד פשוט על ידי קריאה ל beginCache ו endCache בתוך קובץ התבנית. הסיבה היא שהתבנית מצורפת בתוך מתודת CController::render אחרי שתוכן התצוגה כבר הוערך והורץ.

כדי לשמור עמוד שלם במטמון, אנו צריכים לדלג על ההרצה של הפעולה היוצרת את התוכן של העמוד. אנו יכולים להשתמש ב COutputCache כ פילטר כדי להשיג מטרה זו. הקוד הבא מציג כיצג ניתן להגדיר את הפילטר של המטמון:

public function filters()
{
    return array(
        array(
            'COutputCache',
            'duration'=»100,
            'varyByParam'=»array('id'),
        ),
    );
}

הגדרות הפילטר למעלה יצרפו את הפילטר לכל הפעולות בקונטרולר. ניתן להגביל אותו לשימוש על פעולות מסויימות על ידי שמוש באופרטור של פלוס ( + ). מידע נוסף ניתן לקרוא על פילטר.

» Tip|טיפ: אנו יכולים להשתמש ב COutputCache כפילטר מכיוון שהוא יורש מהמחלקה CFilterWidget, וזה אומר שזהו גם פילטר וגם וידג'ט. למעשה, הדרך בה עובד וידג'ט דומה מאוד לפילטר: וידג'ט (פילטר) מתחיל לפני שתוכן של פעולה רץ, והוידג'ט (פילטר) מסתיים אחרי שתוכן הפעולה הורץ.

Found a typo or you think this page needs improvement?
Edit it on github !