在MVC主页中使用数据库数据

假设我想显示最新文章的标题。
对于特定的 Views </ code>, 我们使用控制器来处理它。 但是对于页眉或页脚的常见页面部分,
如何从数据库(在MVC规则中)显示数据(最新文章)?
注意:我使用 php </ code> </ p>

< 请检查我的方法:</ p>

app class:</ p>

 &lt;?php 
class app {
public static function appLoader( $ app){
include'apps /'.$ app。'/'。$ app。'。class.php';
new $ app;
}
}
</ code> </ pre >

test.class.php:</ p>

  class test extends app {
function __CONSTRUCT(){
return'Hello World';
} \ N}
</代码> </ PRE>

<代码> footer.php </代码>:</ p>

 <代码>&LT;页脚&GT;

&lt;?php echo app :: appLoader(“test”)//返回'Hello World'?&gt;
&lt; / footer&gt;
</ code> </ pre>
</ div>

展开原文

原文

Suppose i'd like to display title of latest articles. for particular Views , we use controllers to handle that. but for common section of pages like header or footer , How to display data(latest articles) from database (within MVC rules) ? Note: I use php

Please check my approach:

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>

php

1个回答



注意:这是wrt .Net MVC </ strong> </ p>

如果你 遵循MVC模式 - 然后有一个“部分视图”的概念 - 就像用户控件一样,它可以放在主页面中。</ p>

部分视图也是 一个html页面,可能只是div,没有html body head等因为它将在主html页面内呈现</ strong> </ p>

您可能需要验证部分视图的语法 用PHP。 MVC的概念保持不变。</ em> </ p>

有多种方法可以显示部分视图。 </ p>

一种流行的方式是通过其动作方法调用部分视图的方式 - 最终将显示结果(部分视图)。 </ p>

Action方法将返回“_Footer”部分视图 - 您可以在其中放置显示数据的HTML代码(最新文章)。 </ p>

部分视图必须从文章列表中绑定。</ strong>,俗称 强类型绑定</ em> </ strong > .Net - 这只是将视图(HTML页面)映射到特定类以显示该类中的数据。</ p>

供您参考以下示例(参见下文) .Net):</ p>

为页脚(_Footer)创建局部视图,并使用Action Method(RenderAction - .Net)调用它。 此操作方法可以从数据库中获取数据并在局部视图中显示(_Footer)</ p>

对操作方法的调用类似于视图(html页面):</ p> \ n

  @ {Html.RenderAction(“Index”,“Footer”,new {Area =“Common”,id});  } 
</ code> </ pre>

控制器和操作方法如:</ p>

  public class FooterController:Controller 
{
public ActionResult Index(int id)
{
var vm = new FooterViewModel
{
Id = id
};

返回this.PartialView(“_ Footer”,vm);
}
}
</ code> </ pre>
</ div>

展开原文

原文

Note: This is w.r.t .Net MVC

If you are following MVC pattern - then there's a concept of "Partial Views" - which is just like user controls, and it can be placed in the main page.

Partial view is also an html page which might just div, no html body head etc because it will be rendered inside main html page

You might need to verify the syntax for Partial Views with PHP. The concept remains same for MVC.

There are various ways to display partial views.

One popular way is the one where Partial view is called by its action method - which will ultimately display the result(the partial view).

The Action method will return a "_Footer" Partial view - where you can put your HTML Code of displaying the data from DB(the latest articles).

The partial view must bind from the list of articles. which is popularly known as Strong Type Binding in .Net - which is nothing but mapping the view(HTML page) to a specific class to display the data from that class.

For your reference the below example can be referred(in .Net):

Create a partial view for footer(_Footer) and call it using Action Method(RenderAction - .Net). This action method can fetch the data from database and display in the partial view(_Footer)

The call to the action method be like from the view(html page):

    @{ Html.RenderAction("Index", "Footer", new { Area = "Common", id}); }

And the Controller and action method like:

    public class FooterController : Controller
    {
        public ActionResult Index(int id)
        {
            var vm = new FooterViewModel
            {
                Id = id
            };

            return this.PartialView("_Footer", vm);
        }
    }

dongqin1861
dongqin1861 完成。 谢谢,我很感激它对你有所帮助。
4 年多之前 回复
dtvfshi5248
dtvfshi5248 谢谢。你的评论比你的答案更有用。 请编辑您的答案并替换您的评论。
4 年多之前 回复
dounuo1881
dounuo1881 部分视图也是一个html页面,可能只是div,没有html体头等因为它将在主html页面内呈现
4 年多之前 回复
douxiyi2418
douxiyi2418 我对PHP知之甚少。 但是如果你遵循MVC模式,那么就像用户控件一样,有一个部分视图的概念,它可以放在主页面中。 您可以看到PHP可用于调用部分视图的语法。 有多种方法可以显示部分视图。 我使用了我称之为动作方法的那个 - 最终会显示结果。 Action方法将返回“_Footer”部分视图 - 您可以在其中放置显示数据的HTML代码(最新文章)。 是的,部分视图必须从文章列表中绑定。
4 年多之前 回复
dqp21271
dqp21271 你能描述一下这种方法吗?
4 年多之前 回复
dongpiao8821
dongpiao8821 谢谢。但我不明白。 我用PHP
4 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐