therubby
therubby

Reputation: 65

Laravel Query with Auth:: User

How can i change my Code:

<?php $titles = DB::table('messages')->pluck('text');

foreach ($titles as $title) {
    echo $title;
}
 ?>

to receiver the data from user ID like:

FROM messages->title FROM THE USER WITH THE `id`

I want display all messages that one user has been send.

Thanks

Upvotes: 3

Views: 2409

Answers (2)

Alexey Mezenin
Alexey Mezenin

Reputation: 163778

If you don't use relationships:

DB::table('messages')->where('user_id', auth()->id())->pluck('text')

Or you can define the relationship in the Message model:

public function user()
{
    return $this->belongsTo(User::class);
}

And then load messages:

$messages = auth()->user()->messages;

Or just lazy load messages for current user for later use:

auth()->user()->load('messages');

Upvotes: 4

Naravia
Naravia

Reputation: 122

DB::table('messages')->where('user_id', '=', Auth::user()->id)->pluck('text');

should do the trick

Upvotes: 0

Related Questions