Русскоязычный форум, посвященный фреймворку Kohana

Все о фреймворке Kohana. Обсуждение уроков, документации.
Текущее время: 29 мар 2024, 00:49

Часовой пояс: UTC + 4 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 64 ]  На страницу 1, 2, 3, 4, 5 ... 7  След.
Автор Сообщение
 Заголовок сообщения: Auth (ORM)
СообщениеДобавлено: 02 май 2012, 14:24 
Не в сети
Зеленый

Зарегистрирован: 02 май 2012, 14:19
Сообщения: 6
Не могу что то разобраться с модулем Auth, через ORM.
Раскомментил модуль ORM, auth в bootstrap.php, скопировал файл конфигурации auth.php в папку application/config/ сделал след настройки в нём:

Код:
return array(

‘driver’ => ‘orm’,
‘hash_method’ => ‘sha256′,
‘hash_key’ => ’11415′,
‘lifetime’ => 1209600,
‘session_type’ => Session::$default,
‘session_key’ => ‘auth_user’,

// Username/password combinations for the Auth File driver
‘users’ => array(
// ‘admin’ => ‘b3154acf3a344170077d11bdb5fff31532f679a1919e716a02′,
),

);

пробую регистрацию в произвольном модуле (articles — action_index)

Код:
$user_data = array(‘username’ => ‘Kolya’, ‘email’ => ‘mail@mail.ru’, ‘password’ => ’11sdf51′);
$user = ORM::factory(‘user’)
->create_user($user_data, array(‘username’, ‘email’, ‘password’)) // Регистрируем пользователя
->add(‘roles’, ORM::factory(‘role’, array(‘name’ => ‘login’))); // Добавляем роль login

лезет куча ошибок, регистрации нет((

В чём беда?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Auth (ORM)
СообщениеДобавлено: 02 май 2012, 14:30 
Не в сети
Зеленый

Зарегистрирован: 02 май 2012, 14:19
Сообщения: 6
Самая первая ошибка (из списка):

ORM_Validation_Exception [ 0 ]: Failed to validate array
MODPATH\orm\classes\kohana\orm.php [ 1174 ]
1169
1170 $array = $this->_validation;
1171
1172 if (($this->_valid = $array->check()) === FALSE OR $extra_errors)
1173 {
1174 $exception = new ORM_Validation_Exception($this->errors_filename(), $array);
1175
1176 if ($extra_errors)
1177 {
1178 // Merge any possible errors from the external object
1179 $exception->add_object('_external', $extra_validation);


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Auth (ORM)
СообщениеДобавлено: 02 май 2012, 14:33 
Не в сети
Зеленый

Зарегистрирован: 02 май 2012, 14:19
Сообщения: 6
sql запрос для начала работы с ORM тоже выполнил, таблицы созданы.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Auth (ORM)
СообщениеДобавлено: 02 май 2012, 14:38 
Не в сети
Администратор
Аватара пользователя

Зарегистрирован: 12 фев 2012, 01:02
Сообщения: 462
Попробуйте вот почитать
http://jdstraughan.com/post/auth-module-for-kohana-31-using-orm-driver
Там для 3.1, но не должно сильно отличаться. Если не разберетесь, я потом посмотрю. Сейчас на работе.
Просто с ОРМ я мало работал :roll:

_________________
kohanaframework.su - обучение фреймворку Kohana


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Auth (ORM)
СообщениеДобавлено: 02 май 2012, 14:49 
Не в сети
Зеленый

Зарегистрирован: 02 май 2012, 14:19
Сообщения: 6
admin писал(а):
Попробуйте вот почитать
http://jdstraughan.com/post/auth-module-for-kohana-31-using-orm-driver
Там для 3.1, но не должно сильно отличаться. Если не разберетесь, я потом посмотрю. Сейчас на работе.
Просто с ОРМ я мало работал :roll:


А как вы реализуете регистрацию на сайте?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Auth (ORM)
СообщениеДобавлено: 02 май 2012, 15:07 
Не в сети
Администратор
Аватара пользователя

Зарегистрирован: 12 фев 2012, 01:02
Сообщения: 462
Сам написал.

_________________
kohanaframework.su - обучение фреймворку Kohana


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Auth (ORM)
СообщениеДобавлено: 02 май 2012, 15:49 
Не в сети
Зеленый

Зарегистрирован: 02 май 2012, 14:19
Сообщения: 6
Спасибо за статью)) Всё работает, думаю Вам можно включить её в модули, сделав перевод))
Но вот тоже думаю, использовать ли регистрацию коханы или свою, учился писать сам, но механизм ролей не осваивал правда ещё..


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Auth (ORM)
СообщениеДобавлено: 02 май 2012, 16:04 
Не в сети
Администратор
Аватара пользователя

Зарегистрирован: 12 фев 2012, 01:02
Сообщения: 462
Ну я так и планировал отдельно сделать уроки по модулям. Модули Auth и image надо будет рассмотреть обязательно.
Да может возьму за основу ту статью. Распишу и сам все проверю. Просто это видимо лучше сделать после уроков по orm.

А насчет использования...там можно расширить модуль, если вам, например, понадобятся какие-то еще поля для пользователя, кроме стандартных.

_________________
kohanaframework.su - обучение фреймворку Kohana


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Auth (ORM)
СообщениеДобавлено: 24 июн 2012, 15:18 
Не в сети
Бывалый
Аватара пользователя

Зарегистрирован: 11 июн 2012, 12:31
Сообщения: 46
Добрый день! Реализую вход в админку. Но почему то при редиректе на site/login получаю пустую страницу
Вот КОНТРОЛЛЕР
Код:
class Controller_Admin extends Controller_Base {

    public $template = 'admin/va_base';        //Базовый шаблон
   protected $user;
   protected $auth;
   
    public function  before() {
       
      parent::before();
      
      $this->auth = Auth::instance();
      $this->user = $this->auth->get_user();
      if(!$this->auth->logged_in('admin'))
      {
         $this->request->redirect('login');   
      }
    }
}


Вот КОНТРОЛЛЕР наследник
Код:
class Controller_Admin_Admauth extends Controller_Admin {

   public function action_index() {
        $this->action_login();
    }

   public function action_login() {
      if(Auth::instance()->logged_in())
        {
            $this->request->redirect('admin');
        }

        if (isset($_POST['submit']))
        {
            $data = Arr::extract($_POST, array('username', 'password', 'remember'));
            $status = Auth::instance()->login($data['username'], $data['password'], (bool) $data['remember']);

            if ($status)
            {
                $this->request->redirect('admin');
            }
            else
            {
                $errors = array(Kohana::message('auth/user', 'no_user'));
            }
        }

        $content = View::factory('admin/a_auth/va_auth_login')
                    ->bind('errors', $errors)
                    ->bind('data', $data);

        // Выводим в шаблон
        $this->template->block_center = array($content);
   }


Когда вот это условие убираю из Controller_Admin, то при переходе по адресу site/login отображается форма входа. Но теперь же нет редиректа и проверки, что пользователь авторизирован
Код:
if(!$this->auth->logged_in('admin'))
      {
         $this->request->redirect('login');   
      }


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Auth (ORM)
СообщениеДобавлено: 24 июн 2012, 17:28 
Не в сети
Бывалый

Зарегистрирован: 02 июн 2012, 07:14
Сообщения: 69
Похоже что ваш скрипт начинает рекурсивно редиректить сам на себя, правда в таких случаях браузеры обычно говорят об этом, а не выдают пустую страницу.
После первого редиректа на /login, должен выполниться action_login из Controller_Admin_Admauth (если я правильно понял структуру), но перед ним выполняется before(), унаследованный из родительского Controller_Admin, где снова происходит редирект на /login.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 64 ]  На страницу 1, 2, 3, 4, 5 ... 7  След.

Часовой пояс: UTC + 4 часа [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 14


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Все о фреймворке Kohana  | 
Powered by phpBB® Forum Software © phpBB Group