Ion Auth / CodeIgniter Fatal Error - PullRequest
       9

Ion Auth / CodeIgniter Fatal Error

1 голос
/ 12 ноября 2011

Получение этой фатальной ошибки при попытке доступа к моим контроллерам planner.php и shared.php. Есть мысли?

Fatal error: Uncaught exception 'Exception' with message 'Undefined method Ion_auth::get_user() called' in
/application/libraries/Ion_auth.php:88 Stack trace: #0 

/application/core/MY_Controller.php(50): Ion_auth->__call('get_user', Array) #1 

/application/core/MY_Controller.php(50): Ion_auth->get_user() #2 

/application/controllers/user/planner.php(9): Common_Auth_Controller->__construct() #3

/system/core/CodeIgniter.php(288): Planner->__construct() #4 /index.php(202): require_once('/Users/lrussell...') #5 {main} thrown in/application/libraries/Ion_auth.php on line 88

Расширение библиотеки, которое я использую для ионной аутентификации: http://jondavidjohn.com/blog/2011/01/scalable-login-system-for-codeigniter-ion_auth

Планировщик Контроллер: http://pastie.org/private/wc1bq6eiqb9hn8iubwdgq

Общий контроллер: http://pastie.org/private/uj3ta8dw3jl7kqxizs9n1a

Ion_auth Строка библиотеки 88, сегмент: http://pastie.org/private/mhgwdzjyhatwsdrux4gqpa

Модель CRUD: http://pastie.org/private/m2nhfqzabdsx5eiz6xqupw

События Модель: http://pastie.org/private/b6ksjoowl7wde9errow

Общая модель: http://pastie.org/private/f741jfnf8o2l5oxphnrl5w

1 Ответ

2 голосов
/ 12 ноября 2011

Хм, это случилось со мной точно так же.В последних выпусках этой библиотеки Бен Эдмундс использовал магический метод php __call(), чтобы вам не приходилось вызывать метод модели с использованием обычного синтаксиса $this->ion_auth_model->method(), а вместо этого $this->ion_auth->method(), как если бы это был методпринадлежность к библиотеке.

Но, на самом деле, этот метод принадлежит модели.Итак, если вы посмотрите на модель, вы увидите, что нет метода get_user() (и его нет в библиотеке!), Или, по крайней мере, в той версии, о которой я говорю (самая последняя или та, что была ранее).Я скачал свежую копию одну или две недели назад).Я думаю, что в документации, которую он предоставил, есть некоторые ошибки (хотя общая работа, которую он сделал, великолепна, слава Бену).

Вы можете попробовать использовать метод модели user(), который должен дать тот же результат(это ближе по функциональности).Поэтому позвоните $this->ion_auth->user() и посмотрите, соответствует ли это вашим потребностям.

РЕДАКТИРОВАТЬ

Чтобы уточнить ... вместо этого ...

$this->end_user = $this->ion_auth->current()->row();

сделать это ...

$this->end_user = $this->ion_auth->user()->row();
...