2015-12-04 8 views
1

Я yiibie, я получаю изображение и имя ngo из таблицы ngo и могу показать их на желаемой странице, я хочу показать Ngo в порядке desc, Я имею в виду, что когда новый ngo регистрируется, он должен отображаться как 1-ое изображение на нужной странице. Для что это контроллер НгоYii: как привести данные в desc-порядке на нужную страницу

<?php 

class NgoController extends RController 
{ 
    /** 
    * @var string the default layout for the views. Defaults to '//layouts/column2', meaning 
    * using two-column layout. See 'protected/views/layouts/column2.php'. 
    */ 
    public $layout='//layouts/admin'; 

    /** 
    * @return array action filters 
    */ 
    public function filters() 
    { 
     return array(
//   'accessControl', // perform access control for CRUD operations 
//   'postOnly + delete', // we only allow deletion via POST request 

        'rights', 
       ); 
    } 

    /** 
    * Specifies the access control rules. 
    * This method is used by the 'accessControl' filter. 
    * @return array access control rules 
    */ 
    public function accessRules() 
    { 
     return array(
      array('allow', // allow all users to perform 'index' and 'view' actions 
       'actions'=>array('index','view'), 
       'users'=>array('*'), 
      ), 
      array('allow', // allow authenticated user to perform 'create' and 'update' actions 
       'actions'=>array('create','update'), 
       'users'=>array('@'), 
      ), 
      array('allow', // allow admin user to perform 'admin' and 'delete' actions 
       'actions'=>array('admin','delete'), 
       'users'=>array('admin'), 
      ), 
      array('deny', // deny all users 
       'users'=>array('*'), 
      ), 
     ); 
    } 

    /** 
    * Displays a particular model. 
    * @param integer $id the ID of the model to be displayed 
    */ 
    public function actionView($id) 
    { 
     $this->render('view',array(
      'model'=>$this->loadModel($id), 
     )); 
    } 
     public function actionNgopage($id) 
    {   
       $this->layout='main'; 
     $this->render('ngopage',array(
      'model'=>$this->loadModel($id), 
     )); 
    } 
     public function actionAllngo() 
     { 
      $allmodels= Ngo::model()->findAll(); 

      $this->layout='main'; 
      $this->render('allngo',array('allmodels'=>$allmodels)); 
     } 


    /** 
    * Creates a new model. 
    * If creation is successful, the browser will be redirected to the 'view' page. 
    */ 
    public function actionCreate() 
    { 
     $model=new Ngo; 

     // Uncomment the following line if AJAX validation is needed 
     // $this->performAjaxValidation($model); 

     if(isset($_POST['Ngo'])) 
     { 
      $model->attributes=$_POST['Ngo']; 
      if($model->save()) 
       $this->redirect(array('view','id'=>$model->id)); 
     } 

     $this->render('create',array(
     'model'=>$model, 
     )); 
    } 

    /** 
    * Updates a particular model. 
    * If update is successful, the browser will be redirected to the 'view' page. 
    * @param integer $id the ID of the model to be updated 
    */ 
    public function actionUpdate($id) 
    { 
     $model=$this->loadModel($id); 

     // Uncomment the following line if AJAX validation is needed 
     // $this->performAjaxValidation($model); 

     if(isset($_POST['Ngo'])) 
     { 
      $model->attributes=$_POST['Ngo']; 
      if($model->save()) 
       $this->redirect(array('view','id'=>$model->id)); 
     } 

     $this->render('update',array(
      'model'=>$model, 
     )); 
    } 

    /** 
    * Deletes a particular model. 
    * If deletion is successful, the browser will be redirected to the 'admin' page. 
    * @param integer $id the ID of the model to be deleted 
    */ 
    public function actionDelete($id) 
    { 
     if(Yii::app()->request->isPostRequest) 
     { 
      // we only allow deletion via POST request 
      $this->loadModel($id)->delete(); 

      // if AJAX request (triggered by deletion via admin grid view), we should not redirect the browser 
      if(!isset($_GET['ajax'])) 
       $this->redirect(isset($_POST['returnUrl']) ? $_POST['returnUrl'] : array('admin')); 
     } 
     else 
      throw new CHttpException(400,'Invalid request. Please do not repeat this request again.'); 
    } 

    /** 
    * Lists all models. 
    */ 
    public function actionIndex() 
    { 
     $dataProvider=new CActiveDataProvider('Ngo'); 
     $this->render('index',array(
      'dataProvider'=>$dataProvider, 
     )); 
    } 

    /** 
    * Manages all models. 
    */ 
    public function actionAdmin() 
    { 
     $model=new Ngo('search'); 
     $model->unsetAttributes(); // clear any default values 
     if(isset($_GET['Ngo'])) 
      $model->attributes=$_GET['Ngo']; 

     $this->render('admin',array(
      'model'=>$model, 
     )); 
    } 

    /** 
    * Returns the data model based on the primary key given in the GET variable. 
    * If the data model is not found, an HTTP exception will be raised. 
    * @param integer $id the ID of the model to be loaded 
    * @return Ngo the loaded model 
    * @throws CHttpException 
    */ 
    public function loadModel($id) 
    { 
     $model=Ngo::model()->findByPk($id); 
     if($model===null) 
      throw new CHttpException(404,'The requested page does not exist.'); 
     return $model; 
    } 

    /** 
    * Performs the AJAX validation. 
    * @param Ngo $model the model to be validated 
    */ 
    protected function performAjaxValidation($model) 
    { 
     if(isset($_POST['ajax']) && $_POST['ajax']==='ngo-form') 
     { 
      echo CActiveForm::validate($model); 
      Yii::app()->end(); 
     } 
    } 
} 

И это файл вид request-> BaseUrl;? «Класс = ">/IMG/NGO-banner.jpg IMG-отзывчивым">

          <?php 
     $cnt= -100; 
     $nThumbXRow = 4; 
     foreach($allmodels as $model) { 
      if ($cnt%$nThumbXRow == 0); 

       echo "<div class='col-md-3'><div class='thumbnail'> 
         <img src='" . Yii::app()->request->baseurl. "/img/" . $model->image. "'>" . 
         "<div class='caption'> 
         <h3 style='text-align: center'>" . $model->ngo_name ."</h3> 
         <a href='ngo-profile.php'> <button class='btn btn-primary center-block'>View Profile</button></a> 
         </div></div></div>"; 


      if ($cnt%$nThumbXRow == 0){ 
       echo "</div><!-- row ending here -->"; 
      } 
      $cnt++; 
     } 
    ?>   




            </div><!--ngo-content ending here--> 

ответ

1

попробовать этот способ

public function actionAllngo() 
{ 
    $allmodels= Ngo::model()->findAll(array('order'=>'id DESC')); 
    $this->layout='main'; 
    $this->render('allngo',array('allmodels'=>$allmodels)); 
} 
+0

Спасибо, он работал. –

+0

Тогда отметьте как принято тоже .. – scaisEdge

+0

займет 11 минут .. !! –