mardi 19 juin 2018

Issues with search query

I am trying to run a search query on all of my comments. I am encountering a number of problems. I would to have two search queries one that runs a search on the comment ID and another that runs a search on the username that is connected to the comment through the user_id FK.

Currently im getting the problem:

Too few arguments to function Illuminate\Support\Collection::get(), 0 passed in

Tables: Comment- id, comment, user_id, timestamps User - id, name, username

Models:

class Comment extends Model
{

    public function author()
    {
        return $this->belongsTo('App\User','user_id');
    }
}

Controller:

public function index(Request $request)
{
    $comment =Comment::paginate(10);

    $id=$request->input('id');
    $name=$request->input('username');


    if(!empty($id)){
        $comment->where('id', $request->input('id') )->get();
    }
    if(!empty($name)){
        $comment->where($comment->author->username, 'LIKE', '%'.$name.'%')->get();
    }


    return view('comments.index')->withComment($comment);
}

View:

            <div class="panel-body">
                {!! Form::open(['route' => 'comments.index', 'method' => 'GET']) !!}
                <div class="col-md-5">
                    {!! Form::label('id', 'Search By ID:') !!}
                    {!! Form::text('id', null, array('class' => 'form-control')) !!}
                </div>
                <div class="col-md-5">
                    {!! Form::label('username', 'Search By Username:') !!}
                    {!! Form::text('username', null, array('class' => 'form-control')) !!}
                </div>
                <div class="col-md-2">
                    {!! Form::submit('Find Comments', array('class' => 'btn btn-send ')) !!}
                </div>
                {!!Form::close()!!}

            </div>
@foreach($comment as $comments)
//data
@endforeach



via Chebli Mohamed

Aucun commentaire:

Enregistrer un commentaire