如何使用Codeigniter设置要创建的网站的文件夹结构?

时间:2012-02-29 01:44:03

标签: php codeigniter frameworks e-commerce

我想创建一个电子商务网站。所以它将有两面。网站正面&背面(或管理面板)。我想使用Codeigniter framewrok创建它。如何设置站点的文件夹结构以维护站点的两侧? 网站网址的正面应该是

  

http://www.mysite.com/

背面的网址应该像

  

http://www.mysite.com/administrator/

有什么建议吗?

提前致谢。

3 个答案:

答案 0 :(得分:2)

好的,这就是我通常做的事情。在CI的应用程序文件夹中,我有以下内容:

application/
- controllers/
- - admin/
- - - welcome.php
- - - products.php
- - welcome.php
- - products.php
- views/

这样我就可以使用基本文件夹上的控制器访问我的常规站点,并使用admin文件夹上的控制器访问管理员端。我还定义了自己的自定义控制器,从中扩展了站点上的所有控制器,以根据用户级别应用访问限制。

答案 1 :(得分:2)

这是一个非常简单的设置,可以用不同的方式处理。我还建议oso96_2000建议的内容。我刚刚完成了对views文件夹的处理。在views文件夹中,我将放置一个管理员和公共文件夹。每个文件夹内部是每个控制器的新文件夹,内部是控制器中每个文件夹的视图。希望这是有道理的。

application/
- controllers/
- - admin/
- - - welcome.php
- - - products.php
- - welcome.php
- - products.php
- views/
- - admin/
- - - welcome/
- - - - view1_for_welcome.php
- - - - view2_for_welcome.php
- - - products/
- - - .....
- - public/
- - - welcome/ 
- - - - view1_for_welcome.php
- - - - view2_for_welcome.php

等等。那么您必须确保进行一些检查以确保用户可以访问管理员控制器

答案 2 :(得分:0)

根据CI结构,管理员看起来只是一个类。

他们有一个auth class来阻止普通人查看此课程。

您还需要知道什么?

感谢您的downvote。现在,在您阅读CI文档或每天使用它多年后,您知道文件夹绝对没有任何意义。根据OP的要求,你可以创建一个班级"管理员"在controllers目录中并通过登录限制它 - 一个CI为您提供的类,以便最小化工作 - 或创建一个名为administrator的目录并为该目录提供默认路由。无论哪种方式,它都会被前面提到的auth类限制。

    if($this->isLogged() === false)
    {
        header("Location: ".base_url());
        exit;
    }

将保留任何未登录的人。您还可以分配用户级别或帐户类型以限制所需的访问权限。 简单地创建用于后端区分的文件夹实际上并不意味着它完全分开,甚至更容易维护。这完全取决于您自己的组织实践或标准,这可能会因项目而异 - 所以请不要在同一个文件夹中给出关于如何将前端和后端控制器混乱的演讲。即使是命名约定也可以解决这个问题。 "有任何建议吗?"好吧,我给了一个 - 只是让它成为一个控制器。加上auth文档的链接。我再次感谢你,不知道怎么回事。