laravel - Request Data to Model Function -
i'm trying find out why when dd($request->all())
in store method of controller correct, when send model function register()
no seen.
i'm not quite sure i'm doing wrong.
<?php namespace app\http\controllers; use app\user; use illuminate\http\request; use app\http\requests; use app\http\controllers\controller; class userscontroller extends controller { public function store(request $request, user $user) { $this->authorize('delete', $user); $this->validate($request, [ 'firstname' => 'required|min:3', 'lastname' => 'required|min:3', 'displayname' => 'required|min:3', 'emailaddress' => 'required|email|unique:users,email', 'password' => 'required|min:3', 'role' => 'required|exists:roles,id' ]); $userregistered = $user->register( new user($request->all()) ); if ($userregistered) { flash()->success('success', 'the user has been created!'); } else { flash()->error('error', 'the user not created!'); } return redirect()->to(route('users')); } } <?php namespace app; use illuminate\foundation\auth\user authenticatable; use illuminate\database\eloquent\softdeletes; class user extends authenticatable { use softdeletes; /** * fillable fields user. * * @var array */ protected $fillable = [ 'first_name', 'last_name', 'display_name', 'email', 'password', 'role_id' ]; /** * attributes excluded model's json form. * * @var array */ protected $hidden = [ 'password', 'remember_token', ]; public function register(user $user) { return $user->create([ 'first_name' => $user->firstname, 'last_name' => $user->lastname, 'display_name' => $user->displayname, 'email' => $user->emailadress, 'password' => $user->password, 'role_id' => $user->role ]); } }
you've mixed formatting of variables between request data , user model.
according validation logic, request data coming camelcase
. yet, according $fillable
array, fields on user model snake_case
. but, then, in register
method, you're attempting access fields on user model using camelcase
.
you haven't given enough information definitive answer, need fix formatting of variables. example, change request fields names camelcase
snake_case
, , make sure access fields on model using snake_case
.
Comments
Post a Comment