Что показывать данные на мой взгляд, но в laravel есть ошибка

Здесь я пытаюсь добавить функцию «Добавить комментарий», и это вызывает проблемы с отображением данных.

public function store(Request $request)
{
    $chatterreply =  new Chatterreply;
    $chatterreply->reply = $request->body;
    $chatterreply->chatter_post_id = $request->chatter_post_id;
    $chatterreply->chatter_discussion_id = $request->chatter_discussion_id;
    $chatterreply->save();
    $chatterreplies = Chatterreply::where('chatter_post_id',$request->chatter_post_id)->get();
     $chatter_editor = config('chatter.editor');

    if ($chatter_editor == 'simplemde') {
        // Dynamically register markdown service provider
        \App::register('GrahamCampbell\Markdown\MarkdownServiceProvider');
    }
    echo "<pre>"; print_r($chatterreplies); die;
    return view('chatter::discussion', compact('chatterreplies','chatter_editor'))->with('chatter_alert','Add Comment Successfully');

}

И вот где я передаю переменную

 $chatter = session()->pull('chatter');
            return view('chatter::discussion', compact('discussion', 'posts', 'chatter_editor'))->with('chatterreplies',$chatter);

Что за ошибка?

Rwd 13.09.2018 21:35

Что за ошибка? Какую версию Laravel вы используете? Вы добавили слишком много тегов для этого вопроса. Также ваш store должен перенаправлять после создания новых данных, а не возвращать представление.

Darryl E. Clarke 13.09.2018 21:36

@ DarrylE.Clarke данные теперь отображаются, но когда я проверяю данные с помощью dd (''); он показывает данные в этом представлении, я использую laravel 5.6. Возврат был предложен одним из членов stackoverflow.

Vardana Bhanot 13.09.2018 21:41
view("chatter::discussion") не кажется правильным; вы используете точечную нотацию ("folder.file"), чтобы указать файл .blade.php, который вы хотите показать с помощью метода view(). Кроме того, view(..., compact(...)) и view(...)->with(...) выполняют то же самое; используйте один или другой.
Tim Lewis 13.09.2018 21:47

Но сэр, я делаю это в пакете, поэтому для этого используется ::, поскольку болтовня - это имя пакета, а обсуждение - это представление @TimLewis

Vardana Bhanot 13.09.2018 21:49

Хм ... Я никогда не видел, чтобы :: использовался в таком контексте, поэтому не могу сказать, правильно он или нет; просто наблюдение.

Tim Lewis 13.09.2018 21:51

хорошо, сэр @TimLewis

Vardana Bhanot 13.09.2018 21:54

До сих пор не ясно, в чем проблема.

Rwd 13.09.2018 21:57

@TimLewis Это работает, это пространство имен или «подсказка по пакету» для представлений, предоставленных поставщиком, которые находятся за пределами вашей папки ресурсов / представлений.

Darryl E. Clarke 13.09.2018 22:00

Если кто-нибудь может помочь мне через TeamViewer

Vardana Bhanot 13.09.2018 22:03

@RossWilson Сэр, проблема в том, что я храню комментарии, и когда я передаю данные, чтобы показать эти комментарии в представлении, они не работают (видны), но когда я использую dd ("") для тестирования, он показывает мне необходимые данные.

Vardana Bhanot 13.09.2018 22:04

Есть ли причина, по которой вы не используете только контроллеры, поставляемые с пакетом?

Rwd 13.09.2018 22:07

Просто чтобы упростить работу, это неправильная практика @RossWilson

Vardana Bhanot 13.09.2018 22:09

Ok. После беглого просмотра пакета это связано с тем, что прилагаемый к нему блейд-файл предполагает наличие определенных переменных, то есть $discussion, $posts и $chatter_editor. В файле лезвия для $chatterreplies ничего нет, поэтому файл лезвия не работает. Я бы посоветовал сделать для этого свой собственный напильник.

Rwd 13.09.2018 22:19

хорошо, сэр, но мои комментарии должны быть добавлены на той же странице обсуждение.blade.php. Так что я должен включить новое представление на страницу обсуждения. @RossWilson

Vardana Bhanot 13.09.2018 22:24
0
15
38
0

Другие вопросы по теме