2012-10-30 6 views
0

kohana에 새 항목이 있습니다. 인턴쉽에서 kohana 프레임 워크 3.2로 로그인 시스템을 만드는 작업이 있습니다. 또한 자동 모델러 ORM을 사용하여 물건을 삽입, 업데이트 및 삭제했습니다. 나는 kohana auth와 지금 몇 가지 문제가 있습니다. 이미 데이터베이스 구조를 가져 와서 'users'테이블에 사용자를 삽입하고 'roles_user'테이블에서 역할을 부여했습니다. kohana Auth with automodeler ORM

또한 APP에 Auth.php 파일을 생성/설정/: 나는 이미 활성화 한

if ($_POST) 
{ 
$post = $this->request->post(); 
$success = Auth::instance()->login($post['email'], $post['password']); 

if ($success) 
{ 
echo "Welcome!"; 
} 
else 
{ 
echo "Something goes wrong..."; 
} 

} 

:

내 컨트롤러에서
return array(

    'driver'  => 'AutoModeler_ORM', 
    'hash_method' => 'sha256', 
    'hash_key'  => 'Somebiglonghaskeyofmixedcharacters102345567709', 
    'lifetime'  => 1209600, 
    'session_type' => Session::$default, 
    'session_key' => 'auth_user', 
); 

, 나는 다음과 같은 코드를 사용하여 로그인 기능을 가지고 부트 스트랩의 모듈. 내 역할 모델에

페이스트 빈 링크 : 내 사용자 모델에 http://pastebin.com/bQYReETh 페이스트 빈 링크 : http://pastebin.com/ufzvKjmA

문제는 내가 항상 다른 사람에 올 것입니다.

누군가가 아이디어가 있습니까? 내가 놓친 게 있니?

+0

어떤 오류가 발생합니까? 질문에서 당신이 가진 문제가 정확히 무엇인지는 명확하지 않습니다. – jcern

+1

$ succes에 의해 항상 else 문에 오류가 발생합니다. 그것을 말해 줘서 고마워. 내 질문을 편집했습니다. – woodle

+0

Auth가'$ this -> _ login()'을 호출하면 모델에서 사용자의 쿼리를 찾지 못했을 가능성이 있습니다. – wesside

답변

2

@Woodle는

은 아마 _constructor가 도움이 될 수 있습니다 추가.

public function __construct($id = NULL) 
    { 
     if ($id !== NULL) 
     { 
      $this->load(db::select_array($this->fields())->where($this->_table_name.'.username', '=', $id)); 
     } 
     elseif ($this->id) // We loaded this via mysql_result_object 
     { 
      parent::__construct($id); 
     } 
    } 
+0

그런가요? :) – Findi

+0

@ woodle이 (가) 당신의 문제를 해결 했어요. 똑같습니다. – Findi

+0

내 kohana Auth with auto-modeler_orm이 (가) 잘 작동합니다. 내 다른 문제는 ORM 스타일로 관계를 설정하고 auto-modeler_ORM 스타일로 설정하지 않는다는 것입니다. 어떤 종류의 문제가 있습니까? – woodle