zend Framework - 如何在视图中显示父行
我正在围绕 mysql sakila db 构建一个 zend 框架 Web 应用程序。我已经能够在电影视图中显示基本的电影表详细信息。该表除其他列外还包含引用语言表的“language_id”和“original_language_id”列。 我已在模型中正确设置了表关系。我不确定如何在我的电影视图中显示语言(不是 id) - 如何以及在哪里使用模型关系在我的视图中显示语言名称?在控制器级别? 这是我的电影控制器的一部分:
class FilmsController extends Zend_Controller_Action
{
public function indexAction()
{
$this->view->title = 'Films';
$this->view->headTitle($this->view->title);
$films = new Application_Model_DbTable_Films();
$this->view->films = $films->fetchAll();
这是我显示表格的视图的一部分
<td><?php echo $this->escape($film->title);?></td>
<td><?php echo $this->escape($film->description);?></td>
<td><?php echo $this->escape($film->release_year);?></td>
<td><?php echo $this->escape($film->language_id);?></td>
。 。 。
I am building a zend framework web app around the mysql sakila db. I have been able to display the basic films table details in a films view. this table contains among other columns, a 'language_id' and an 'original_language_id' columns that reference a language table.
I have set up the table relationships correctly in my models. I am not sure how to display the language (not the id's) in my films view - how and where do I use the model relationships to display the langauge names in my view? at the controller level?
here's part of my films controller:
class FilmsController extends Zend_Controller_Action
{
public function indexAction()
{
$this->view->title = 'Films';
$this->view->headTitle($this->view->title);
$films = new Application_Model_DbTable_Films();
$this->view->films = $films->fetchAll();
here's part of the view where I show the table
<td><?php echo $this->escape($film->title);?></td>
<td><?php echo $this->escape($film->description);?></td>
<td><?php echo $this->escape($film->release_year);?></td>
<td><?php echo $this->escape($film->language_id);?></td>
.
.
.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
要获取电影的父行(例如语言),您可以使用:
类似地,要获取电影表的依赖行集(例如演员),您可以使用:
为了简化这一点,您可以定义自定义电影 db_row ,该行将有一个名为的方法,例如 getLanguage()。有关此内容的更多信息,您可以阅读 在这里。通过这种方式,您可以执行以下操作来获取语言名称:
$filmRow->getLanguage()->name;
。To get parent row for your films (e.g. language), you can use:
Simillarly to get dependant rowset of the film table (e.g. actors), you can use:
To simplify this you could define custom film db_row that would have a method called, e.g. getLanguage(). More about this you can read here. This way to get e.g. a language name you could just do:
$filmRow->getLanguage()->name;
.