i'm using default laravel 5.1 user registration. have 2 tables: users , shops. when user registers, app should insert user in table users, id , use register shop. i've been reading default authcontroller.php didn't find anything. here authcontroller if helps.
<?php namespace app\http\controllers\auth; use app\user; use validator; use app\http\controllers\controller; use illuminate\foundation\auth\throttleslogins; use illuminate\foundation\auth\authenticatesandregistersusers; class authcontroller extends controller { /* |-------------------------------------------------------------------------- | registration & login controller |-------------------------------------------------------------------------- | | controller handles registration of new users, | authentication of existing users. default, controller uses | simple trait add these behaviors. why don't explore it? | */ use authenticatesandregistersusers, throttleslogins; /** * create new authentication controller instance. * * @return void */ public function __construct() { $this->middleware('guest', ['except' => 'getlogout']); } /** * validator incoming registration request. * * @param array $data * @return \illuminate\contracts\validation\validator */ protected function validator(array $data) { return validator::make($data, [ //'name' => 'required|max:255', 'email' => 'required|email|max:255|unique:users', 'password' => 'required|confirmed|min:6', ]); } /** * create new user instance after valid registration. * * @param array $data * @return user */ protected function create(array $data) { return user::create([ //'name' => $data['name'], 'email' => $data['email'], 'password' => bcrypt($data['password']), ]); } /** * path login route. * * @return string */ public function loginpath() { return route('login'); } /** * post register / login redirect path. * * @return string */ public function redirectpath() { return route('home'); } }
solved, have integrity constraint violation. code correct?
protected function create(array $data) { $user = new user([ 'email' => $data['email'], 'password' => bcrypt($data['password']) ]); $user->role = 'shop_owner'; $user->remember_token = str_random(10); $user->save(); $userid = $user->id; shop::create([ 'name' => $data['s_name'], 'address' => $data['s_address'], 'cp' => $data['s_pcode'], 'telephone' => $data['s_tlf'], 'contact_name' => $data['cp_name'], 'contact_num' => $data['cp_tlf'], 'id_user' => $userid ]); return $user; }
there go:
protected function create(array $data) { $user = user::create([ //'name' => $data['name'], 'email' => $data['email'], 'password' => bcrypt($data['password']), ]); $userid = $user->id; shop::create([... use $userid here ...]); return $user; }
Comments
Post a Comment