Skip to content
Advertisement

Call to a member function save() on array laravel

Im doing the update method. When I tried to update the specific data, im getting this error “Call to a member function save() on array”. Why? Is there’s something missing in my codes?

I also tried to print_r the $result variable, it has a value..

View

@extends('dashboard')
@section('content')

<br><br>
<div class="x_content">
  <table class="table table-hover">
     <thead>
      <tr>
        <th>#</th>
        <th>Text Header</th>
        <th>Text Description</th>
        <th>Action</th>
        <th>Updated At</th>
        <th>Created At</th>
      </tr>
    </thead>
    <tbody>
      @foreach($data as $text)
      <tr>
        <th scope="row">{{ $text->id }}</th>
        <td>{{ $text->text_header}}</td>
        <td>{!! nl2br(e($text->text_description)) !!}</td>
        <td><button class = "btn btn-info btn-md" data-toggle="modal" data-target="#myModal-{{$text->id}}"><i class="fa fa-pencil-square-o" aria-hidden="true"></i> Edit</button></td>
        <div class="modal fade" id="myModal-{{$text->id}}" tabindex="-1" role="dialog" aria-labelledby="titleLabel">
          <div class="modal-dialog" role="document">
            <div class="modal-content">
              <div class="modal-header modal-header-success">
                <button type="button" class="close btn btn-primary" data-dismiss="modal" aria-label="Close">
                <span aria-hidden="true">&times;</span></button>
                <h4 class="modal-title" id="titleLabel">New Content</h4>
              </div>
              <div class="modal-body">
                <div class="row">
                  <div class ="col-md-2 col-lg-7">
                    <div style="display: inline">
                      <div class="form-group">
                          <form action="{{ url('updateText/'.$text->id) }}" enctype="multipart/form-data" method="POST">
                           {{ csrf_field() }}
                          <label>Title Header</label>
                          <input type= "text" name = "title_header"value =" {{ $text->text_header}}" class = "form-control"></input>
                      </div>
                    </div>
                    <div class ="col-md-4 col-lg-9">
                      <div class="form-group">
                          <label>Title Description</label>
                          <textarea style="resize:none"> {{ $text->text_description}}</textarea>
                      </div>
                    </div>
                  </div>
                </div>
              </div>
              <div class="modal-footer">
                <button type="button" class="btn btn-danger" data-dismiss="modal">Close</button>&nbsp;
                <span class="pull-right">
                   <button type="submit" class="btn btn-success">Update</button>
                </span>
              </form>
              </div>
            </div>
          </div>
        </div>
        <td>{{ $text->updated_at}}</td>
        <td>{{ $text->created_at}}</td>

      </tr>

      @endforeach
      {{ $data->links() }}

    </tbody>
  </table>
</div>
@stop

Controller

public function updateText(Request $request, $id)
{

    $result = $request->all();
    $test = $result->save();
    print_r($test);die;

    Session::flash('flash_message', 'Task successfully added!');

    return redirect()->back();
}

Route

Route::post('updateText/{id}','AdministratorController@updateText');

Advertisement

Answer

public function updateText(Request $request, $id)
{
    $result = YourModel::find($id);
    $result->your_column_1 = $request->your_value_1;
    $result->your_column_2 = $request->your_value_2;
    $result->your_column_3 = $request->your_value_3;
    $result->your_column_4 = $request->your_value_4;
    .
    .
    .
    $result->your_column_n = $request->your_value_n;

    if($result->save()){
        Session::flash('flash_message', 'Task successfully added!');
    }else{
        Session::flash('flash_message', 'Task failed!');
    }

    return redirect()->back();
}

This way can help you.

User contributions licensed under: CC BY-SA
7 People found this is helpful
Advertisement