在symfony中从实体返回值以查看文件
我想将一个值从实体返回到视图文件。下面是我的实体函数在symfony中从实体返回值以查看文件,symfony,Symfony,我想将一个值从实体返回到视图文件。下面是我的实体函数 public function getVisitorName($id) { $repository = $this->getDoctrine()->getRepository('SystemVmsBundle:VisitorsDetails'); $product = $repository->findOneBy(array('id' =>$id)); $name=$product-&
public function getVisitorName($id)
{
$repository = $this->getDoctrine()->getRepository('SystemVmsBundle:VisitorsDetails');
$product = $repository->findOneBy(array('id' =>$id));
$name=$product->getFirstname();
return $name;
}
这是我的视图文件中调用该函数的行
<a href="{{ path('visitorsdetails_show', { 'id': entity.visitorId}) }}">{{ entity.visitorName(entity.visitorId) }}</a>
我正在尝试获取与访客id(在条目表中)对应的访客名称(从访客表中)。然后我将如何执行此操作?您有两种方法: 1) 通过向EntryDetails添加字段详细信息,将SystemVmsBundle:EntryDetails实体映射到SystemVmsBundle:VisitorsDetails as OntToOne,然后在细枝模板中,通过
{{ entity.details.name }}
2) 与其创建getVisitorName(),不如使用相同的功能为此创建。您的indexAction()并没有返回响应对象,它只是返回一个实体数组。控制器操作应该返回一个包含要显示的html的响应(除非它们用于javascript的ajax调用)。如果您使用的是细枝模板,则可以使用controller render()方法创建响应,如下所示:
return $this->render('<YourBundle>:<YourViewsFolder>:<YourView>.html.twig', array(
'entities' => $entities,
));
<a href="{{ path('visitorsdetails_show', { 'id': entity.visitorId}) }}">{{ entity.visitorsDetails.firstName }}</a>
return$this->render(':.html.twig',数组(
“实体”=>$entities,
));
当您纠正了这个错误后,我怀疑您会得到一个错误,因为$this->getDoctrine()不能在实体类中工作。getVisitorName()方法中的代码不应该在实体类中
正如@pomaxa已经提出的,我相信您的EntryDetails和VisitorsDetails实体之间应该存在一种关系,尽管我对您的问题数据了解不够,不知道应该是什么类型的关系(OneToOne/ManyToOne)。如果EntryDetails实体与VisitorsDetails有关系,则EntryDetails类将包含$VisitorsDetails属性和获取/设置该属性的方法。然后细枝文件中的行将如下所示:
return $this->render('<YourBundle>:<YourViewsFolder>:<YourView>.html.twig', array(
'entities' => $entities,
));
<a href="{{ path('visitorsdetails_show', { 'id': entity.visitorId}) }}">{{ entity.visitorsDetails.firstName }}</a>
Symfony手册中有关于的章节
另外,我希望你不介意我给你一些建议:
一般来说,变量名越有意义,代码的可读性、可维护性和无bug性就越高。随后,该实体上的人员也将更容易理解您的代码,并在需要时为您提供帮助。该实体不应包含有关存储库的代码。请发布显示页面的控制器的功能代码。您的实体是否支持容器?Oo@IgorPantović我无法获得您的qstn..可能是因为我对symfony非常陌生。:-)哪一页是空白的?条目列表?(即包含entity.visitorName链接的页面)或访问者详细信息(即单击链接时打开的页面)?所提供的控制器代码是否生成空白页?@ ReBrdDo索引页本身显示为空!谢谢你,波马萨!我试试看,然后告诉你!!