just want start saying have no clue i'm doing... have user_info table looks
schema::create('user_info', function(blueprint $table){ $table->increments('id'); $table->unsignedinteger('user_id'); $table->foreign('user_id')->references('id')->on('users')->ondelete('cascade')->onupdate('cascade'); $table->string('address'); $table->string('city'); $table->string('state'); $table->string('zip'); $table->text('description'); $table->text('experience'); $table->timestamps(); });
i'm having trouble creating update controller looks right now.
public function update(request $request) { $user = $request->user(); $data['description'] = $request->input('description'); $data['experience']=$request->input('experience'); $user->user_info -> $data->save(); }
again...no clue i'm doing...
and form:
<div class='col-md-10 form-well'> {!! form::open(['method' => 'patch', 'action'=> ['usercontroller@update', request::user()->id]]) !!} <div class='row'> <div class='form-group'> <div class='col-md-2'> {!! form::label('description', 'about you')!!} </div> <div class='col-md-7'> {!! form::textarea('description', null, ['class'=>'form-control', 'rows'=>'3'])!!} </div> </div> </div> <div class='row'> <div class='form-group'> <div class='col-md-2'> {!! form::label('experience', 'experience , skills')!!} </div> <div class='col-md-7'> {!! form::text('experience', null, ['class'=>'form-control'])!!} </div> </div> </div> <div class='form-group'> {!! form::submit('save changes',['class'=> 'btn btn-md btn-success']) !!} {!! form::close()!!} </div>
update: able update this:
$user->user_info->description = $data['description']; $user->user_info->experience = $data['experience']; $user->user_info->save();
but there way can :
$user->user_info->$request::input::all(); $user->user_info->save();
try this:
public function update(request $request, $id) { $user = user::with('user_info')->find($id); if(!$user) { return response('user not found', 404); } $userinfo = $user->user_info; if(!$userinfo) { $userinfo = new userinfo(); $userinfo->user_id = $id; $userinfo->save(); } try { $values = input::only($userinfo->getfillable()); $userinfo->update($values); } catch(exception $ex) { return response($ex->getmessage(), 400); } }
also in userinfo model add this:
protected $fillable = array('description', 'experience'); public function getfillable() { return $this->fillable; }
Comments
Post a Comment