1

我目前有一个网站,我还没有实现 MVC,但正在测试水域,看看它是否是我想做的事情。我在网上环顾四周,并没有找到我的问题的明确答案。我有点理解MVC的概念;但是,我想知道如何使用 MVC 处理用户制作的页面。

目前,我主要根据参数加载页面。用户可以添加自己的报价并将其插入数据库。然后,为了显示他们添加的作者的引语,用户将访问例如 mysite.com/author.php?quotee=Randy+Pausch。

理想情况下,我想转换我的网站,使 URL 看起来像 mysite.com/authors/Randy-Rausch 或类似的东西。

这是我对 MVC 不了解的地方。我是否需要以某种方式为每个作者创建一个视图,如果需要,我该怎么做?还是 URL 的最后一部分实际上是一个参数,即使它不使用“?quotee=Some+Author”语法?我觉得我不理解 MVC 的一个基本部分。

如果有人能为我的问题提供一个好的方法或一个好的教程,我将不胜感激。我看过关于静态页面的教程,但想要一个基于可由站点用户创建的页面的教程。

谢谢你的帮助!

4

1 回答 1

1

您创建处理所有应用程序逻辑的“控制器”。在这种情况下,它会查看您请求的作者,并决定显示哪个“视图”。您的控制器可以通过“模型”查找每个作者的数据库信息。然后,您的“控制器”可以将此作者信息发送到将显示它的“视图”。

您只需要一个“视图”即可显示作者页面。它会是这样的:

Author name: <?php echo $author_name?>
Book title: <?php echo $book_title?>
Category: <?php echo $category?>

然后在你的控制器中你会有类似的东西

$data['author_name'] = $this->your_model->get('author_name');
$data['book_title'] = $this->your_model->get('book_title');
$data['category'] = $this->your_model->get('category');
$this->load->view('authors_page', $data);

显然还有更多的东西——但希望这能给你一个粗略的想法。

于 2012-06-08T16:51:41.957 回答