假设我想显示最新文章的标题。
对于特定的Views
,我们使用控制器来处理它。但对于页眉或页脚等常见页面,
如何从数据库(在MVC规则中)显示数据(最新文章)?
注意:我使用php
请检查我的方法:
app class:
<?php
class app{
public static function appLoader($app){
include 'apps/'.$app.'/'.$app.'.class.php';
new $app;
}
}
test.class.php:
class test extends app{
function __CONSTRUCT(){
return 'Hello World';
}
}
footer.php
:
<footer>
<?php echo app::appLoader("test") // returns 'Hello World' ?>
</footer>
答案 0 :(得分:0)
注意:这是w.r.t .Net MVC
如果您正在关注MVC模式 - 那么就有一个“部分视图”的概念 - 就像用户控件一样,它可以放在主页面中。
部分视图也是一个html页面,可能只是div,没有html body head等因为它将在主html页面内呈现
您可能需要使用PHP验证部分视图的语法。 MVC的概念保持不变。
有多种方法可以显示部分视图。
一种流行的方式是通过其动作方法调用部分视图的方式 - 最终将显示结果(部分视图)。
Action方法将返回“_Footer”部分视图 - 您可以在其中放置显示数据的HTML代码(最新文章)。
部分视图必须从文章列表中绑定。在.Net中通常称为 强类型绑定 - 这是什么都不是但将视图(HTML页面)映射到特定类以显示该类中的数据。
以下示例可供参考(在.Net中):
为页脚(_Footer)创建局部视图,并使用Action Method(RenderAction - .Net)调用它。此操作方法可以从数据库中获取数据并显示在部分视图(_Footer)
中对action方法的调用类似于视图(html页面):
@{ Html.RenderAction("Index", "Footer", new { Area = "Common", id}); }
控制器和动作方法如:
public class FooterController : Controller
{
public ActionResult Index(int id)
{
var vm = new FooterViewModel
{
Id = id
};
return this.PartialView("_Footer", vm);
}
}