2013-06-25 56 views
1

我正在研究yii框架併爲不同的頁面製作不同的佈局。我爲登錄頁面創建了一個「登錄佈局」,以便我可以按照我的要求設計該頁面。我剛纔說的對佈局文件即login.php中和代碼的幾行代碼是在這裏:Yii佈局錯誤:允許內存大小爲134217728字節耗盡(試圖分配40961字節)

<?php 
/* @var $this Controller */ 
    $this->beginContent('//layouts/login'); 
     echo $content; 
    $this->endContent(); 
?> 

現在,我使用的UsersController的登錄操作此佈局。但是,當我設置行動的佈局。 Yii會拋出下面給出的這種類型的錯誤:

致命錯誤:在/ home/teamreal/public_html/yii/framework/web/widgets中允許內存大小爲134217728個字節(嘗試分配40961個字節) /COutputProcessor.php 線路33

我不知道爲什麼被一次又一次地顯示此錯誤的位置,因爲我有代碼的動作功能correcty是這樣:

public function actionLogin() { 
     $this->layout = 'login'; 
     $model = new LoginForm('login'); 

     // if it is ajax validation request 
     if (isset($_POST['ajax']) && $_POST['ajax'] === 'login-form') { 
      echo CActiveForm::validate($model); 
      Yii::app()->end(); 
     } 

     // collect user input data 
     if (isset($_POST['LoginForm'])) { 
      $model->attributes = $_POST['LoginForm']; 
      // validate user input and redirect to the previous page if valid 
      if ($model->validate() && $model->login()) 
       $this->redirect(Yii::app()->user->returnUrl); 
     } 
     // display the login form 
     $this->render('login', array('model' => $model)); 
    } 

所以,請幫我解決這個問題。

+1

你很快就會得到一個評論或回答有關如何增加內存限制。但128 MB已經相當多了。我想你有一個無限循環或類似的東西。 –

+0

謝謝阿爾瓦羅的快速回復。但我需要更新你,我沒有添加任何循環,但設置佈局後,它會拋出我發佈在我的問題上的錯誤。 –

+0

哦,我不是直接在你的自定義代碼中。有時候,當使用框架時,如果你做了一些框架沒有想到的事情,你可能會遇到這種情況。我只是意味着增加內存限制可能不是解決方案。 –

回答

相關問題