Не удается получить доступ к пользовательскому представлению в CodeIgniter - PullRequest
0 голосов
/ 19 сентября 2018

У меня проблемы с доступом к пользовательскому представлению, которое я сделал в CodeIgniter.Всякий раз, когда я хочу перейти к списку, который я создаю как приложение, он выдает мне сообщение «1001 * 404 Страница не найдена» , даже если я включил созданную мной модель в файл autoload.php в конфигурации.папка.Вот мой код в приложении для создания списков, которое я создаю:

Вот мой код в моем контроллере с именем lists.php:

<?php 

    class Lists extends CI_Controller{
    // Display a specific list
    public function display_list($list_id){

        //display information about the list
        $data['list_data'] = $this->lists_model->get_list($list_id);

        $data['main_view'] = 'project_views/lists/display_list';

        $this->load->view('project_views/layouts/main', $data);
    }
?>

Вот мой код в моей модели, который называетсяlists_model.php:

<?php 

    class Lists_model extends CI_Model{

    public function get_list($list_id){
            $this->db->where('id', $list_id);
            $query = $this->db->get('lists');

            return $query->row();
        }
?>

Вот мой код, который, по моему мнению, называется display_list.php

<div class="col-xs-9">

    <h3>List Name:<?php echo $list_data->list_name;?></h3>
    <h3>Created by:<?php echo $list_data->list_creator;?></h3>
    <h3>Lists Details:</h3>
    <p class="lists-description">
        <?php echo $list_data->list_details;?>
    </p>

</div>

Вот мой код в моем index.php в папке моих просмотров:

<h1>Lists made with Takenote</h1>
<p class="bg-success">

    <?php if($this->session->flashdata('list_created')): ?>
    <?php echo $this->session->flashdata('list_created'); ?>
    <?php endif; ?>

    <?php if($this->session->flashdata('list_updated')): ?>
    <?php echo $this->session->flashdata('list-updated'); ?>
    <?php endif; ?>

    <?php if($this->session->flashdata('list_deleted')): ?>
    <?php echo $this->session->flashdata('list_deleted'); ?>
    <?php endif; ?>
</p>

<div class="panel panel-primary">
    <div class="panel-heading"><h3>Lists</h3></div>
    <div class="panel-body">
        <ul class="list-group">

            <?php foreach($lists as $list): ?>

            <li class="list-group-item">
                <a href="<?php echo base_url();?>project_controllers/lists/create" class="btn btn-success pull-right">
                    Create a List
                </a>
                <h3 align="center">
                    <a href="<?php echo base_url();?>project_contollers/lists/display_list/<?php echo $list->id;?>">
                        <?php echo $list->list_name; ?>
                    </a>            
                </h3>
            </li>
        <?php endforeach; ?>
        </ul>
    </div>
</div>

Я даже включил созданную мной модель в autoload.php в папку config:

$autoload['model'] = array('project_models/user_model', 'project_models/project_model', 'project_models/tasks_model', 'project_models/lists_model');

Однако, даже после этого я получаю сообщение о том, что 404 PageНе найдено при попытке перейти к определенному списку:

Ответы [ 2 ]

0 голосов
/ 19 сентября 2018

Беспечный я.После минут отладки я уже решил проблему.Что я упускаю, так это одна буква в пути, куда я добавляю ссылку в моем index.php.Вот код, который я застреваю в течение минут до часа:

<a href="<?php echo base_url();?>project_contollers/lists/display_list/<?php echo $list->id;?>">
   <?php echo $list->list_name; ?>
</a> 

Это должно быть так:

<a href="<?php echo base_url();?>project_controllers/lists/display_list/<?php echo $list->id;?>">
  <?php echo $list->list_name; ?>
</a>
0 голосов
/ 19 сентября 2018

Пожалуйста, взгляните на https://www.codeigniter.com/userguide3/general/routing.html#wildcards

Может предоставить вам необходимую информацию.

Я считаю, что вам нужно добавить собственный маршрут для этого приложения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...