【问题标题】:cannot create sub directories in Views for Code Igniter frame work无法在 Codeigniter 框架的视图中创建子目录
【发布时间】:2014-03-11 09:30:43
【问题描述】:

我有一个在 CodeIgniter 下运行的网站 www.nationalpaymentcard.com

一段时间以来,我的网站运行良好,但我的所有页面都设置在 Views 文件夹中。我试图在其中创建一个子目录,例如 Views/NewsPosts/post1.php 以更好地组织我的文件,但如果我这样做了,我会得到 404。

现在我已经研究了一段时间,但我想我不确定谷歌到底要做什么来弄清楚我需要做什么。我希望互联网上的某个人可以帮助我指出正确的方法。我想我可能需要配置我的 controllers.php 文件,但我不确定如何......或者我是否需要添加另一个。

这是我当前的 controllers.php

class Pages extends CI_Controller {

    public function view($page = 'home')
    {   
        if ( ! file_exists('application/views/pages/'.$page.'.php'))
        {
            // Whoops, we don't have a page for that!
            show_404();
        }

        $data['title'] = ucfirst($page); // Capitalize the first letter

        $this->load->view('templates/header', $data);
        $this->load->view('pages/'.$page, $data);
        $this->load->view('templates/footer', $data);
    }
}

非常感谢任何帮助!谢谢!

【问题讨论】:

  • 您是将所有文件从Views 移动到NewsPosts 还是只移动home.php
  • 不是全部,我只是想把某些页面移到它上面
  • 目前我有我的模板和视图文件夹,在视图中我有主页,然后我想在视图中有一个文件夹,其中包含其他页面但那些不显示

标签: php codeigniter directory


【解决方案1】:

看起来你的'if'条件不正确,如果你改变它应该可以工作

if ( ! file_exists(VIEWPATH.'pages/'.$page.'.php'))
{
    // Whoops, we don't have a page for that!
    show_404();
}

【讨论】:

  • 这样我可以访问子目录吗?
  • 这只是为了不出现404错误,因为条件错误。
  • 您可以在视图中任意设置$this->load->view('/YOURDIR/ANOTHERDIR/FILE', $data);
  • OOOOHHHH 所以我只需要添加另一行这样的设置路径到另一个目录。这样,如果系统被调用进入子目录,系统就知道去哪里了吗?
  • 没错,它就像一个包含,你需要告诉正确的路径
猜你喜欢
  • 2011-12-15
  • 1970-01-01
  • 2018-12-11
  • 2012-03-06
  • 1970-01-01
  • 2015-10-28
  • 2015-11-04
  • 1970-01-01
  • 2012-01-10
相关资源
最近更新 更多