我是代码点火器数据映射器的新手。我有一个名为user的表,我正在尝试从数据库表中检索数据并将其显示给用户。 这是我在模型中的内容:
$u=new User();
$results=$u->get_by_user_id($id);
//$results here will be set to huge bunch of none sense data( which also includes the row that I am looking for as well)
if ($u->exists())
{
foreach ($results->all as $row){
$data['user']['first_name']=($row->user_first); //this where I am stuck ..
$data['user']['last_name']=($row->user_last);//this is also where I am stuck..
}
我不知道如何处理结果以获取我正在寻找的必填字段并将它们存储在我传递给用户查看的$ data中。 谢谢!
答案 0 :(得分:1)
当您在模型上调用get_by_x()
时,字段将填充数据,您可以像这样访问它们:
$u = new User();
$u->get_by_user_id($id);
if($u->exists())
{
// you can access the table columns as object fields
$data['user']['first'] = $u->first;
$data['user']['last'] = $u->last;
}
else
{
$data['error'] = 'No such user!';
}
查看真正有用的文档:请参阅Get和Get By。
此外,DataMapper希望所有表都有id
列:请参阅Table Naming Rules。如果您的列名为id
,则应拨打$u->get_by_id($id)
而不是$u->get_by_user_id($id)
。