Как исправить ошибку "Нет результатов для модели [App \ Posts]" - PullRequest
0 голосов
/ 21 апреля 2019

Я получаю сообщение об ошибке «Нет результатов запроса для модели [App \ Posts].», Но модель возвращает результат в основном.Я пытаюсь использовать кнопку pusher для отправки события о новом сообщении.

$post = \App\Posts::find(1);
if($post) {
    event(new \App\Events\NewPost($post));
}

Событие:

class NewPost implements ShouldBroadcastNow
{
    use Dispatchable, InteractsWithSockets, SerializesModels;

    private $post;

    /**
     * Create a new event instance.
     *
     * @return void
     */
    public function __construct($post)
    {
        $this->post = $post;
    }

    /**
     * Get the channels the event should broadcast on.
     *
     * @return \Illuminate\Broadcasting\Channel|array
     */
    public function broadcastOn()
    {
        return new Channel('messages');
    }
    public function broadcastWith() {
        return [
            'id' => $this->post->id
        ];
    }
}

Ответы [ 2 ]

0 голосов
/ 22 апреля 2019

Я нашел решение. Эта ошибка была вызвана тем, что $ post был сериализован SerializesModels.

Изменение use Dispatchable, InteractsWithSockets, SerializesModels; на:

use Dispatchable, InteractsWithSockets; помогло.

0 голосов
/ 22 апреля 2019

Идентификатор автоинкремента в базе данных всегда начинается с 1, а не с нуля, тогда Post с идентификатором 0 никогда не будет существовать.Тогда Eloquent не находит запись с идентификатором 0.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...