2016-08-13 5 views
1

IはNetbenas、XAMPP、xdebugのとYii2がインストールされていると私は、単純なRESTコントローラ有する:xiibugとNetbeansを使用してYii RESTコントローラファイルをデバッグする方法(ブレークポイントとURLの使用場所)

<?php 
namespace app\controllers; 
use yii\rest\ActiveController; 

class ContractController extends ActiveController 
{ 
    public $modelClass = 'app\models\Contract'; 
} 

Firebirdの2.1データベース(WIN1257)に接続し、エラーを与える:

error on line 2 at column 431: Encoding error 

私がしたいですこのエラーをデバッグして、Yii-Firebirdプラグインをどのように改善できますか?このコントローラーにアクションがない場合はどこにブレークポイントを置くことができますか(ベースクラスからのアクションが使用されます)。

http://localhost:8081/myproject/ 

とインデックスファイル:

web/index.php 

私の意図はここでエラー与えURLを入れていた:実行congfigurationでは、私はプロジェクトのURLを持っている

http://localhost:8081/myproject/web/index.php/contract 

しかし、Netbeansのは受け入れません/インデックスファイルフィールドの契約部分。

Netbenasでどのファイルを開き、URLをデバッグするかを指定する方法http://localhost:8081/myproject/web/index.php/contract

答えて

1

あなた

class ContractController extends ActiveController 

だから、あなたが適切なActiveControllerアクションにブレークポイントを置くことができActiveController

の拡張..です

vendor/yiisoft/yii2/rest/ActionController 

あなたが

を見つけることができますあなたは、あなたが置くことができるクラスコード

を見つけることができると同じディレクトリに...

'class' => 'yii\rest\IndexAction', 

:あなたは適切なクラスなどがあり、各アクションのためにそれを見ることができます0

public function actions() 
{ 
    return [ 
     'index' => [ 
      'class' => 'yii\rest\IndexAction', 
      'modelClass' => $this->modelClass, 
      'checkAccess' => [$this, 'checkAccess'], 
     ], 
     'view' => [ 
      'class' => 'yii\rest\ViewAction', 
      'modelClass' => $this->modelClass, 
      'checkAccess' => [$this, 'checkAccess'], 
     ], 
     'create' => [ 
      'class' => 'yii\rest\CreateAction', 
      'modelClass' => $this->modelClass, 
      'checkAccess' => [$this, 'checkAccess'], 
      'scenario' => $this->createScenario, 
     ], 
     'update' => [ 
      'class' => 'yii\rest\UpdateAction', 
      'modelClass' => $this->modelClass, 
      'checkAccess' => [$this, 'checkAccess'], 
      'scenario' => $this->updateScenario, 
     ], 
     'delete' => [ 
      'class' => 'yii\rest\DeleteAction', 
      'modelClass' => $this->modelClass, 
      'checkAccess' => [$this, 'checkAccess'], 
     ], 
     'options' => [ 
      'class' => 'yii\rest\OptionsAction', 
     ], 
    ]; 
} 

関連クラス実行関数のブレークポイント

public function run() 
{ 
    if ($this->checkAccess) { 
     call_user_func($this->checkAccess, $this->id); 
    } 

    return $this->prepareDataProvider(); 
} 
関連する問題