0

目前我遇到了一个问题,我有两种方法和两种视图。正如 MVC 模式所期望的那样,每个方法都将其 Db 数据传递给视图。

出现我的问题是因为我希望其中一个视图是局部的,它包含在另一个视图中。

所以它看起来像这样:

  • 第一个视图 - 即表单
  • 第二种视图 - 表单片段,即城市列表

我希望第二个视图是它自己的唯一文件,我怎样才能将它包含在第一个表单中,在文件的任何位置?

** 必须编辑,因为我第一次弄错了。只有一个控制器,有两种方法将数据传递给两个视图。

4

2 回答 2

1

我不知道我是否理解正确,但 CodeIgniter 能够将视图作为数据返回。在控制器中,它看起来像这样:

$data = array();
$data['partial'] = $this->load->view('partial_view', $data, true); // the 3rd parameter let's the view return as data
$this->load->view('whole_view', $data);

whole_view 文件看起来像这样:

<html>
<head></head>
<body>
<h1>View 1</h1>
<?php echo $partial; ?>
</body>
</html>

为 partial_view 加载数据的逻辑可以提取到模型中。

希望这可以帮助!

于 2013-09-04T22:40:46.567 回答
0

您可以像这样包含负载:

view_one.php

<html>
<head></head>
<body>
<h1>View 1</h1>
<?php echo $this->load->view('view_two'); ?>
</body>
</html>
于 2013-09-04T22:01:49.347 回答