【问题标题】:Importing a model in header view class CodeIgniter在标题视图类 CodeIgniter 中导入模型
【发布时间】:2021-12-26 08:53:17
【问题描述】:

目前我有一个索引页面,其中显示了我所有页面的页眉、内容正文和页脚,如下所示:

<!--include header --->
    <?php $this->load->view('include/header');?>
    <div class="container"><?php $this->load->view($page); ?></div>
    <!--include footer --->
    <?php $this->load->view('include/footer') ;?>

现在在我的包含/标题中,我有一个 &lt;li&gt; 标记,它从我的一个模型中引用以显示特定状态的计数,我在标题类的顶部添加一条语句以获得型号:

<?php $main['count']=$this->dashboard_model->combined(); 
?>
...
<li>
    <ul>
        <li><a href="leads/">Active Leads (<?php echo $count[0]["active"] ?>)</a></li>
    </ul>
</li>

现在,当我在仪表板页面中时,它会显示计数,但是当我切换到任何其他页面时,它会给出错误消息并显示 Undefined property: CI_Loader::$dashboard_model at line 1

【问题讨论】:

    标签: php codeigniter


    【解决方案1】:

    表示模型没有加载到其他页面。在您的仪表板页面上,“dashboard_model”模型在您在标题中使用之前已加载。您需要先加载模型,然后才能在其他页面上使用它。

    【讨论】:

    • 你能举个例子吗?我已经尝试在标题视图类$this-&gt;load-&gt;model('dashboard_model'); 上添加它,但它仍然给出相同的错误
    • 如何在没有该错误的索引页面中加载模型?
    • 在我没有此错误的页面中是我的仪表板页面,我在仪表板控制器中加载模型。现在我有 50 个其他控制器,所以我不想在每个控制器中导入模型,所以我想要一个用于标题的控制器,它将在我的所有页面中导入模型
    • 来自文档:如果您发现在整个应用程序中全局需要一个特定模型,您可以告诉 CodeIgniter 在系统初始化期间自动加载它。这是通过打开 application/config/autoload.php 文件并将模型添加到自动加载数组来完成的。
    • 因为您将其定义为 $main['count'] 而不是 $count
    猜你喜欢
    • 2020-09-12
    • 1970-01-01
    • 2013-06-11
    • 1970-01-01
    • 2014-03-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多