Bonfire/CodeIgniter を使用して、登録ユーザーのみがアクセスできるエリアを設定しようとしています。Bonfire のドキュメントによると、Authenticated_controller を使用できます。Authenticated_controller からコントローラーを拡張しようとすると、次のエラー メッセージが表示されます。
致命的なエラー: 264 行目の D:\xampp\htdocs\bonfire\bonfire\libraries\template.php の非オブジェクトに対するメンバー関数 is_ajax_request() の呼び出し
私が持っているコードは、コントローラ boffice 用です。
<?php if (!defined('BASEPATH')) exit('No direct script access allowed');
/**
* boffice controller
*/
class Boffice extends Authenticated_Controller
{
public $ci;
//--------------------------------------------------------------------
/**
* Constructor
*
* @return void
*/
public function __construct()
{
parent::__construct();
$this->ci =& get_instance();
$this->load->library('form_validation');
$this->lang->load('boffice');
$this->load->model('pan/pan_model', null, true);
$this->load->model('activities/activity_model');
Assets::add_module_js('boffice', 'boffice.js');
Template::set_theme("jumbotron");
}
//--------------------------------------------------------------------
/**
* Displays a list of form data.
*
* @return void
*/
public function index()
{
Template::render();
}
//--------------------------------------------------------------------
}
私が受け取るその他の警告は以下のとおりです。
エラー - 2014-08-15 13:10:19 --> 重大度: 通知 --> オブジェクト以外の D:\xampp\htdocs\bonfire\bonfire\libraries\template.php のプロパティを取得しようとしています 258 エラー - 2014- 08-15 13:10:19 --> 重大度: 通知 --> オブジェクト以外のプロパティを取得しようとしています D:\xampp\htdocs\bonfire\bonfire\libraries\template.php 258 ERROR - 2014-08-15 13 :10:19 --> 重大度: 通知 --> オブジェクト以外のプロパティを取得しようとしています D:\xampp\htdocs\bonfire\bonfire\libraries\template.php 264
エラーが発生した template.php のコード:
255 public static function render($layout=NULL)
256 {
257 $output = '';
258 $controller = self::$ci->router->class;
259
260 // We need to know which layout to render
261 $layout = empty($layout) ? self::$layout : $layout;
262
263 // Is it in an AJAX call? If so, override the layout
264 if (self::$ci->input->is_ajax_request())
265 {
267 $layout = self::$ci->config->item('template.ajax_layout');
268
269 $controller = NULL;
270 }
同様のエラー メッセージを見たことがありますが、問題はオブジェクトが初期化されていないことです。この「is_ajax_request()」タイプのエラーはどこにも見つからず、これを修正する方法がわかりません。
どんな助けでも大歓迎です。