このエラーがどこから発生したのかを見つけるのに苦労しています:
エラー: SQLSTATE[42S22]: 列が見つかりません: 1054 不明な列 'HomeVisitorDemographic.Last Name' が 'field list' にあります
まず正常に$this->set('homeVisitor', $this->HomeVisitorDemographic->find('list'));
動作します。
実行しようとすると問題が発生します。
$this->set('homeVisitor', $this->HomeVisitorDemographic->find('list', array(
'fields' => array('id','Last Name'),
)));
今私が読んだほとんどのものは、問題は「姓」フィールドが存在しないことであると言うでしょう。それはまさにエラーが言っていることです. Cake が実行しようとしている SQL は次のとおりです。
SQL Query: SELECT `HomeVisitorDemographic`.`id`, `HomeVisitorDemographic.Last Name`
FROM `cake`.`HomeVisitorDemographics` AS `HomeVisitorDemographic` WHERE 1 = 1
そして私のデータベースから:
mysql> describe HomeVisitorDemographics;
+------------------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+------------------+--------------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| Last Name | varchar(70) | NO | | NULL | |
| First Name | varchar(70) | NO | | NULL | |
+------------------+--------------+------+-----+---------+----------------+
3 rows in set (0.00 sec)
mysql>
ですから、なぜフィールドを引っ張ることができないのか、本当にちょっと混乱しています。多分私はただ疲れていて、簡単なことを見落としていますか?そこにフィールドが存在することがわかります。サイトの他のページからも姓を取得するため、姓が存在し、データがそこにあることがわかります. 私のデバッグ レベルは 2 に設定されているため、キャッシュは 10 秒後に期限切れになります。何か案は?