cakephp 3のデータを更新するには?Cakephp 3更新クエリ
答えて
あなたは、そのような別の方法で使用することができます
$tablename = TableRegistry::get("Model");
$query = $tablename->query();
$result = $query->update()
->set(['fieldname' => 'value'])
->where(['condition' => 'value'])
->execute();
これはデータを更新するデフォルトの方法ではないことに注意してください。これはModel.afterSaveのようなイベントをトリガーしません。 – jurrieb
、これを試してください:あなたはまた、作成/更新することができます
$tablename = TableRegistry::get("Model");
$conditions = array('id'=>12);
$fields = array('name'=>'andro','family'=>'lpoez');
$tablename->updateAll($fields, $conditions);
リファレンスhttps://book.cakephp.org/3.0/en/orm/saving-data.htmlセクション一括更新 – omid
use Cake\ORM\TableRegistry;
$articlesTable = TableRegistry::get('Articles');
$article = $articlesTable->get(12); // Return article with id 12
$article->title = 'CakePHP is THE best PHP framework!';
$articlesTable->save($article);
ようこそStackOverflow。質問に対する善良な答えには、単なるコード以上のものが含まれていなければなりません。あなたが何をしているのか、正しい答えであると信じる理由についての説明が必要です。また、コードを正しく投稿する方法については、回答エディタの書式設定ガイドを参照してください。 – yakatz
は)(newEntityを使用した場合(表の情報を結合する)またはpatchEntity。あなたのPOSTデータは次のようになります。
//お使いのデータを更新する
$table = $this->Table->get($id); //get data using id
if ($this->request->is(['post'])) {
$post_data = $this->request->data;
$table = $this->Tags->patchEntity($table, $post_data);
$this->Table->save($table); //update record
}
も同様に簡単で、save()メソッドレコードの更新のために新規レコード、
$table = $this->Table->newEntity();
if($this->request->is(['post'])){
$post_data = $this->request->data;
$table = $this->Tags->patchEntity($table, $post_data);
$this->Table->save($table); //save record
}
//を追加
use Cake\ORM\TableRegistry;
$articlesTable = TableRegistry::get('Articles');
$article = $articlesTable->get($id); // Return article with id = $id (primary_key of row which need to get updated)
$article->title = 'CakePHP is THE best PHP framework!';
// other fields if necessary
..........
$articlesTable->save($article);
:また、その目的のために使用されています
データを更新する方法は複数あります。
あなたは既存のエンティティを取得することができ、変更値と更新:あなたは、インスタンスの要求データの配列を持つエンティティにパッチを適用することができます https://book.cakephp.org/3.0/en/orm/saving-data.html#updating-data
$entity = TableRegistry::get('Users')->get(1);
$entity->name = 'foo';
TableRegistry::get('Users')->save($entity);
: https://book.cakephp.org/3.0/en/orm/saving-data.html#merging-request-data-into-entities
$entity = TableRegistry::get('Users')->get(1);
TableRegistry::get('Users')->patchEntity($entity, $this->request>getData);
TableRegistry::get('Users')->save($entity);
- 1. CakePHPの更新クエリ
- 2. CakePHP 3フォーム提出後の更新ページ
- 3. Cakephp 3のクエリOR条件
- 4. Cakephp 3検索クエリ(concat付き)
- 5. CakePHP 3:クッキーから配列を削除して更新する
- 6. CakePHP 3結合テーブルのデータを更新する
- 7. CakePHPの3 hasManyの更新奇妙な行動
- 8. 他のテーブルの関連する行を更新するcakephp 3
- 9. cakephp 3.xのサブクエリ、新しいORM?
- 10. CakePhp 3 - 新しいプロジェクトを作成
- 11. セッションタイムアウト時のcakephp更新フィールド
- 12. CakePHP 3のリストの変更に関連するリストを更新する
- 13. SQL更新クエリ
- 14. MySQL更新クエリ
- 15. 更新クエリ
- 16. アクセス更新クエリ
- 17. SQL更新クエリ
- 18. SQL更新クエリ
- 19. 更新クエリが
- 20. データベース更新クエリ?
- 21. CakePHP 3/MySQL
- 22. CakePHPの3:URL
- 23. CakePHP 3:クッキーチュートリアル
- 24. Cakephp 3カスタムクエリエラー
- 25. cakephpの3:ローカライズルーティング
- 26. CakePHPの3
- 27. は、CakePHP 3
- 28. バックエンド/フロントエンドCakePHP 3
- 29. CakePHPの3 plguin
- 30. Cakephp 3.xショッピングカートデータベーススキーム
は、まずチェックここで質問をする前に[データの更新方法](https://book.cakephp.org/3.0/en/orm/saving-data.html#updating-data)のCakePHP 3文書を参照してください。これはもっと怠けだと思う。 – CodeWhisperer