먼저, OrmAuth 패키지의 사용자 모델에 이미 구성된 EAV 컨테이너로 원하는 것을 쉽게 얻을 수 있습니다. 당신은 모델에 대한 메타 데이터를 설정해야하고, 그와 같은 저장 :
이
$user = Auth_User::find(1);
$user->telefon_number = '+36 30 taratatta-taratatta';
$user->save();
그건 당신의 users_metadata
테이블에 telefon_number
을 놓을 게요,하지만 사용자를 쿼리 할 때, 그것은에 자동으로 사용할 수 있습니다 그 모델 인스턴스.
그러나 이러한 속성을 사용하여 고급 쿼리를 작성하려는 경우와 같이 충분하지 않을 수도 있습니다. 필드가 users
테이블에 있어야 할 수도 있습니다.
내가 달성 한 작업은 documented under the extending the core part of the documentation입니다. 기본적으로 나는이 같은 OrmAuth 패키지에서 \Auth\Model\Auth_User
클래스, 확장 :에, 지금
namespace Model;
class Auth_User extends \Auth\Model\Auth_User
{
/**
* @var array model properties
*/
protected static $_properties = [
// your properties go here
];
}
를 앱의 bootstrap.php
, 대신 OrmAuth 패키지의 하나의 클래스를 사용하는 자동 로더에게 있습니다
\Autoloader::add_classes(array(
// Add classes you want to override here
// Example: 'View' => APPPATH.'classes/view.php',
'Auth_User' => APPPATH.'classes/model/auth/user.php',
'Model\\Auth_User' => APPPATH.'classes/model/auth/user.php',
));
참고 :이 예제에서는 Auth_User
과 Model\Auth_User
을 모두 설정하지만 사용자의 필요에 따라 충분할 수도 있습니다.