我使用自定义查询的模型很少,只是不想与它们对抗所以我使用$this->query
方法来查询数据库。
现在有问题......
我可以使用$model[0][0]['field']
访问数据的唯一方法是,还有其他方法可以在foreach
循环中显示它们吗?
答案 0 :(得分:0)
如果可以,请避免使用查询功能。 $this->Model->find()
让事物变得更清洁。
答案 1 :(得分:0)
编写查询时,请遵循CakePHP命名约定 - 这使得返回的数据更容易处理。
SELECT * FROM `posts` as Post, `comments` as `Comment` ...
然后,您获得的返回数据与find()
的内容非常相似,即$queryResults['ModelName']['FieldName]
或$queryResults[0]['ModelName']['FieldName]
。
此链接也可能有所帮助。它与使用find
而不是query
有关,但它显示了如何在AppModel
中创建一个方法来自动重新格式化返回的数据(将计算数据移动到模型中,以避免返回值为[0] [0])。
http://teknoid.wordpress.com/2008/09/29/dealing-with-calculated-fields-in-cakephps-find/