注册上的FuelPHP Sentry插入组
我在文档中找不到关于这个的任何东西。 我经常使用Codeigniter,我主要使用Ben Edmunds Ion auth,这对我来说比较容易,因为我可以在注册中添加一个组插入函数 你可以否决这个愚蠢的问题,但我在哨兵文件里找不到任何关于这个问题的东西 这是我的注册码:注册上的FuelPHP Sentry插入组,fuelphp,cartalyst-sentry,Fuelphp,Cartalyst Sentry,我在文档中找不到关于这个的任何东西。 我经常使用Codeigniter,我主要使用Ben Edmunds Ion auth,这对我来说比较容易,因为我可以在注册中添加一个组插入函数 你可以否决这个愚蠢的问题,但我在哨兵文件里找不到任何关于这个问题的东西 这是我的注册码: public function action_register() { $response = Response::forge(); // validation $val = Val
public function action_register()
{
$response = Response::forge();
// validation
$val = Validation::forge('registration');
$val->add_field('first_name', 'Username', 'required|trim|valid_string[alpha,spaces]');
//$val->add_field('first_name', 'Vezetéknév', 'required|');
$val->add_field('last_name', 'Keresztév', 'required');
$val->add_field('email', 'Email', 'required|valid_email');
$val->add_field('email_again', 'Email újra', 'required|valid_email|match_field[email]');
$val->add_field('password', 'Jelszó', 'required|min_length[5]');
$val->add_field('gender', 'Nemed', 'required');
$val->add_field('talent', 'Tehetséged', 'required');
$val->add_field('talent_level', 'Tehetségi szinted', 'required');
if($val->run()):
try
{
// register the user
$user = Sentry::user()->register(array(
'email' => Input::post('email'),
'password' => Input::post('password'),
'metadata' => array(
'first_name' => Input::post('first_name'),
'last_name' => Input::post('last_name'),
'gender' => Input::post('gender'),
'talent_level' => Input::post('talent_level'),
)
));
if($user):
//$email_data = array();
//echo Config::get('base_url'). "user/activate/". $user['hash'];
$email = Email::forge();
$email->from('my@email.me', Config::get('site_name'));
$email->to(Input::post('email'), Input::post('first_name'));
$email->subject('Regisztráció');
$email_data = array(
'name' => "Kedves " . Input::post('first_name'). "<br><br>",
'title' => "Üdvözöllek a ".Config::get('site_name')." oldalán" ."<br>",
'link' => '<a href="'.Config::get('site_url'). "user/activate/". $user['hash'].'">Fiókod megerősítéséhez kérlek kattints ide</a>'
);
$email->html_body(\View::forge('email/activation', array('email_data' => $email_data)));
$email->send();
$response->body(json_encode(array(
'status' => 'ok',
)));
else:
$data['errors'] = "error";
endif;
}
catch (SentryUserException $e)
{
$response->body(json_encode(array(
'status' => 'error',
'message' => array(
'email_taken' => $e->getMessage()
)
)));
}
else:
$response->body(json_encode(array(
'status' => 'error',
'message' => array(
'first_name' => $val->error('first_name') ? $val->error('first_name')->get_message() : null,
'last_name' => $val->error('last_name') ? $val->error('last_name')->get_message() : null,
'email' => $val->error('email') ? $val->error('email')->get_message() : null,
'email_again' => $val->error('email_again') ? $val->error('email_again')->get_message() : null,
'password' => $val->error('password') ? $val->error('password')->get_message() : null,
'gender' => $val->error('gender') ? $val->error('gender')->get_message() : null,
'talent' => $val->error('talent') ? $val->error('talent')->get_message() : null,
'talent_level' => $val->error('talent_level') ? $val->error('talent_level')->get_message() : null,
)
)));
endif;
return $response;
}
public function action\u register()
{
$response=response::forge();
//验证
$val=验证::forge(“注册”);
$val->add_字段('first_name','Username','required | trim | valid_string[alpha,spaces]');
//$val->add_字段('first_name','Vezetéknév','required |');
$val->add_字段('last_name','Keresztév','required');
$val->add_字段('email'、'email'、'required | valid_email');
$val->add_字段('email_再次,'email_jra','required | valid_email | match_字段[email]”);
$val->add_字段('password','Jelszó','required | min_length[5]);
$val->add_字段('gender','Nemed','required');
$val->add_字段('talent'、'Tehetséged'、'required');
$val->add_字段('talent_level','Tehetségi szinted','required');
如果($val->run()):
尝试
{
//注册用户
$user=Sentry::user()->寄存器(数组(
'email'=>Input::post('email'),
'password'=>Input::post('password'),
“元数据”=>数组(
'first_name'=>Input::post('first_name'),
'last_name'=>Input::post('last_name'),
'gender'=>Input::post('gender'),
“人才级别”=>Input::post(“人才级别”),
)
));
如果($user):
//$email_data=array();
//echo Config::get('base_url').“user/activate/”$user['hash'];
$email=email::forge();
$email->from($email)my@email.me,Config::get('site_name');
$email->to(输入::post('email'),输入::post('first_name'));
$email->subject('Regisztráció');
$email\u data=array(
'name'=>“Kedves”。输入::post('first_name')。“
”,
“title'=>“Üdvözöllek a”.Config::get('site_name').“oldalán”。
”,
“链接”=>“
);
$email->html\u body(\View::forge('email/activation',array('email\u data'=>$email\u data));
$email->send();
$response->body(json_编码(数组(
“状态”=>“正常”,
)));
其他:
$data['errors']=“error”;
endif;
}
捕获(SentryUserException$e)
{
$response->body(json_编码(数组(
'状态'=>'错误',
'消息'=>数组(
'email_take'=>$e->getMessage()
)
)));
}
其他:
$response->body(json_编码(数组(
'状态'=>'错误',
'消息'=>数组(
'first_name'=>$val->error('first_name')?$val->error('first_name')->get_message():null,
'last_name'=>$val->error('last_name')?$val->error('last_name')->get_message():null,
'email'=>$val->error('email')?$val->error('email')->get_message():null,
'email\u reach'=>$val->error('email\u reach')?$val->error('email\u reach')->get\u message():null,
'password'=>$val->error('password')?$val->error('password')->get_message():null,
'gender'=>$val->error('gender')?$val->error('gender')->get_message():null,
'talent'=>$val->error('talent')?$val->error('talent')->get_message():null,
“talent_level”=>$val->error('talent_level')?$val->error('talent_level')->get_message():null,
)
)));
endif;
返回$response;
}
因此,我的问题是如何使其保存所选的用户组
谢谢。这是从;我想这就是你想要的:
try
{
// option 1
$user->add_to_group(2);
// option 2
$user->add_to_group('editor');
}
catch (SentryUserException $e)
{
$errors = $e->getMessage(); // catch errors such as user already in group
}