2017-08-29 11 views
0

YII2 ActiveControllerで降順でデータを返す方法は?私を助けてください。 activecontrollerから返されるJSONレスポンスは、news_idの降順でなければなりません。YII2 ActiveControllerで降順でデータを返す方法は?

<?php 
    namespace app\api\modules\v1\controllers; 
    use yii\web\Response; 
    use yii\rest\ActiveController; 

    class NewsController extends ActiveController { 
     // We are using the regular web app modules: 
     public $modelClass = 'app\models\News'; 
    } 

このニュースモデル

<?php 

    namespace app\models; 

    use Yii; 
    class News extends \yii\db\ActiveRecord 
    { 

     public static function tableName() 
     { 
      return 'news'; 
     } 


     public function rules() 
     { 
      return [ 
       [['news_title', 'news_description', 'news_link'], 'required'], 
       [['news_description', 'news_link'], 'string'], 
       [['news_time'], 'safe'], 
       [['news_title'], 'string', 'max' => 255], 
      ]; 
     } 


     public function attributeLabels() 
     { 
      return [ 
       'news_id' => 'News ID', 
       'news_title' => 'News Title', 
       'news_description' => 'News Description', 
       'news_link' => 'News Link', 
       'news_time' => 'News Time', 
      ]; 
     } 
    } 
+2

があなたのクエリを追加問題の関連モデルについて説明します。 –

+0

モデルクラスを追加しました。データを降順に返すというアイデアはありますか? –

答えて

1

それはなりますあなたのケースでは、HTTP query でオーダーを送信してみてください。 api/web/v1/news?sort=-news_id

+0

降順でデータを返す次のメソッドを指定できますか? –

+0

アトリビュート名( '-news_id')の前に' -'を設定した場合、降順に並び、 '-' simbol(' news_id')でパスすると昇順になります。 – vityapro

+0

しかしAPI私のAndroid開発プロセス(API)には( - )が含まれています。だから、このapi/web/v1/newsを呼び出す方法がありますので、降順に戻ります。 –

0

このお試しください:

<?php $data = News::find()->orderBy('news_id DESC')->all() ?> 
関連する問題