这应该返回大约五个位置的列表。它什么都不返回,没有错误。我已经使用mysql workbench测试了sql。它返回数据就好了。现在我正在编写后端,所以我不关心使用视图或数据提供者。我只是确保我的后端功能正常工作。那么考虑到这一点,你将如何返回findAllBySql检索的数据?
class CashLogic
{
public function AllLocations()
{
$model = new Locations;
$allLocations = $model->findAllBySql("SELECT name from locations");
return $allLocations;
}
}
class SiteController extends Controller
{
public function actionIndex()
{
$model = new CashLogic;
$data = $model->AllLocations();
return $data;
}
}
答案 0 :(得分:1)
findAllBySql()
方法返回一组模型。从您的代码中,您似乎只需要names
个位置。另一种方法是
$AllLocations=CHtml::listData(Locations::model()->findAll(),'name','name');
这将返回array('name'=>'name','name'=>'name')
形式的数组。更好的解决方案是将第一个name
替换为locations
表的主键。