2017-02-22 19 views
0

プロジェクトの2番目の部分を開始しているので、そして、プロジェクトの後半に着手する前に、最初に移行プロセスを完了したいと思います。私は移行プロセスに関するいくつかの懸念を抱き、疑問を解決したいと思います。CakePHP 3.4からCakePHP 4.0への移行の準備

現在、私のプロジェクトでは、我々は

  1. の下に言及したこれらの機能の多くを使用していたことは、我々はすべての$ this - >フォーム - >入力 [「説明」] $に交換する必要がありますかthis-> Form->コントロール ['description']?
  2. Response :: download()がResponse :: withDownload()になると述べました。 $ this-> response-> WithDownload($ filename)に$ this-> response-> download($ filename)を変更する必要があるということですか?
  3. Table.phpでこのコード行$ this-> primaryKey( 'id')を使用しました。これは非推奨リストの一部であり、getX()メソッドとsetX()メソッドで置き換えられました。それはどういう意味ですか?あなたに私に例を与えることができれば幸いです。
  4. 以下のコードはコントローラにあり、私はあなたがhydrate()(今はenableHydration()/ isHydrationEnabled())に言及していることに気付きました。以下に変更する必要があるのは何ですか?

    $CustomersordersTable-> find()     
              -> select(['order_id'=>'Customerorders.order_id']) 
              -> where(['id IN' => $studentlist]) 
              -> hydrate(false) 
              -> toArray(); 
    
  5. は、私はまたの$ this - >要求 - >データが[ 'idは']廃止されていることを理解し、我々はの$ this - >要求 - >のgetData( 'ID')にする必要があります。しかし、詳細を追加するときは、今この$ this-> request-> getData( 'id')にランダムなid値を割り当てることはできません。テーブルに保存する前に、以下にランダムIDを割り当てました。

    $this->request->data['id'] = TableRegistry::get('Customers')->find('guid'); 
    

あなたは、CakePHP 4.0のための暫定的なリリース日を持っていますか?

+3

CakePHPの4.0のロードマップhttps://github.com/cakephp/cakephp/wiki/4.0-Roadmap – tarikul05

答えて

2
  1. はい
  2. はい
  3. 単にあなたが値を設定し、値を取得するために取得するには、setメソッドを使用していること。 setTable($ name)と同じです。
  4. enableHydration()
  5. リクエストデータは決して直接変更されることはありませんでした。 3.4以降ではない。リクエストからデータを取得し、変更してください。 3.4のリクエストオブジェクトはimmutableです。

CakePHP4のリリース日はありません。roadmapの日付はありません。 CakePHPはボランティアによって開発されているため、作業に時間と気分があるため、作業が完了します。寄付を歓迎します。 :)

+0

ありがとうAあなたの助けにたくさん! – SS86

0

5.

$guid = TableRegistry::get('Customers')->find('guid'); 
$newData = $this->request->withData('id', $guid); 

//新しい要求データを取得

$newData->getData('id'); 
+0

ようこそスタックオーバーフロー!このユーザーの問題を解決しているかもしれませんが、将来この問題に遭遇するユーザーにとってはコードオンリーの回答はあまり役に立ちません。あなたのコードが元の問題を解決する理由を説明するために、あなたの答えを編集してください。 –

関連する問題