私は古いテーブルから新しいケーキアプリにユーザーをインポートするための簡単な方法を書いています。私は古いユーザーのテーブル(old_users)を私のケーキアプリのデータベースにインポートしました。基本的には、old_usersテーブルをすべて選択してから、それらをループして、$ newuser-> create( 'old_username'、 'old_password')のようなsomehtingを使って新しいユーザテーブルに追加する必要があります。モデルなしでCakePHPでSQLクエリを手動で実行する方法
しかし、このインポートは一度だけ実行されるため、tempテーブルのモデルなどを作成したくありませんでした。だから私の質問は - どのように基本的な選択を行うことができますユーザーのコントローラ内のケーキメソッドからこのテーブルからすべてのユーザーを取得します。私はこのようなsomehtingを考えていた:
public function admin_importOldUsers() {
$db = $this->getDataSource();
$db->fetchAll('SELECT * FROM old_users');
}
しかし、それはエラーをfailswith:
Call to undefined method UsersController::getDataSource()
私は(モデルなしで)別のdbテーブルを照会する方法についてのドキュメントで多くを見つけるカントコントローラ内から....
誰かが正しい方向に向いていますか?事前
クエリで 'JOIN'を使用したいのですが? – Kunok
@Kunokこのメソッドでは、生のSQLクエリを書くことができます。あなたが好きな場合は、それを入れても問題ありません。 Cakeアプリケーションで実際のORMモデルを使用する場合は、このメソッドを使用しないでください。 Cakeクエリービルダーと関連データを結合する方法についてのドキュメントを読んでください。 – BadHorsie