私は自分のMySQLクエリをCakephpで作成しようとしています。CakePHPでカスタムMySQLクエリを作成するには?
これは私のLocationsController.php
:
<?php
App::uses('Location', 'Model');
class LocationsController extends AppController
{
public $helpers = array('Html', 'Form');
function index()
{
$this->loadModel("Location");
$this->Location->get();
}
}
これは私のLocationModel.php
:
<?php
App::uses('AppModel', 'Model');
class LocationModel extends Model {
public $name = 'Location';
public function get()
{
$this->Location->query("SELECT * FROM locations;");
}
}
あなたが見ることができるように、私は単純なクエリを実行しようとしていますが、それは動作しません。私はこのエラーを取得する:
Error: SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error
in your SQL syntax; check the manual that corresponds to your MySQL server
version for the right syntax to use near 'get' at line 1
私が見つける(「すべて」)のような魔法の方法のいずれかを使用する代わりに、それが動作する...
あなたは問題が何であるかを見ることができますか?私は本当にできないし、私は単純な仕事をしようとしている!コントローラがあるべき
べきではありません'Location'モデルでは、' $ this-> query( 'SELECT * FROM locations'); '? – AlienWebguy
以下の答えを確認して、次に何が起こるか教えてください! – Karma
私は、あなたが既にロケーションモデルを持っていて、単に 'find(all)'を行うことができるときに、ここでカスタムクエリを使用する根気のない理由を見ません...本当にカスタムクエリを使用する必要があるかどうか常に尋ねてください。あなたはあなたが本当にそれらを必要としないことが分かります。 – mark