首页 > 解决方案 > 混淆 CodeIgniter 路由

问题描述

这是我的路线:

$route['pages/show_create']['GET'] = 'pages/show_create';
$route['pages/create']['POST'] = 'pages/create';

这是我的控制器:

public function show_create()
    {
        $data['title'] = 'Create new news';     
        $this->load->view('templates/header', $data);
        $this->load->view('news/create');
        $this->load->view('templates/footer');
    }

    public function create()
    {
        $data['title'] = 'Create new news';
        $this->form_validation->set_rules('title', 'Title', 'required');
        $this->form_validation->set_rules('text', 'Text', 'required');
        if($this->form_validation->run() === FALSE)
        {
            $this->load->view('templates/header', $data);
            $this->load->view('news/create');
            $this->load->view('templates/footer');
        }
        else
        {
            $this->news_model->set_news();
            $this->load->view('news/success');
        }
    }

我想通过访问news/show_create路由来显示表单,但它只返回 404。我的代码有什么问题?谢谢

标签: phpcodeigniter

解决方案


Codeigniter 文档是非常简单的编程文档。您可以使用以下链接轻松了解有关路由的更多信息。

https://www.codeigniter.com/userguide3/general/routing.html

正如我在您的代码中看到的那样,您不需要提及方法类型以及路由。

在这里,我假设您有 PagesController 类,您在其中使用名称 show_create 创建了一个方法,为此您可以在您的路由类中设置如下所示的路由。如果您仍然有困惑,您可以在这里写。

$route['news/show_create'] = 'pages/show_create';


推荐阅读