Как выполнить цикл с использованием оператора foreach в моем представлении лезвия laravel?

Я пытаюсь перебрать выбранные поля в своей базе данных, а затем опубликовать их на странице просмотра лезвий. Однако я не могу вернуть данные, и он возвращает неопределенную переменную: сообщение об ошибке.

Я пробовал несколько способов вернуться к просмотру, например, с помощью -> () и компактного

Ниже приведена функция в моем контроллере, которая получает сообщения и отправляет их в представление.

public function getPosts()
{
  $posts = Posts::all();
  //  return view('profile', ['posts' => $posts]);

    //$profilePosts = Posts::paginate(10);
   return view('page.profile' , compact('posts'));

}

Ниже приведен мой оператор foreach в моем представлении лезвия.

@foreach ($posts as $post)

{{$post->postContent}}

 @endforeach

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

Ниже мой класс модели Post

namespace App;

use Illuminate\Database\Eloquent\Model;

class Posts extends Model
{
    public function user()
    {

        //Relationship
        return $this->belongsTo("App\User");
    }
}

Значение извлекается в представлении, попробуйте сбросить $ post в контроллер, что он показывает?

MVS 28.12.2018 04:12

Почему не return view('page.profile' , ['posts' => $posts]);

Ibu 28.12.2018 04:12

@Ibu по-прежнему возвращает неопределенную переменную

John 28.12.2018 04:15

@MVS, похоже, не получает никаких данных, я пытался повторить $ post, но он ничего не отображает, какие-либо другие предложения?

John 28.12.2018 04:19

В вашем контроллере, прежде чем возвращать представление dd($posts);, пожалуйста

Ahmed Nour Jamal El-Din 28.12.2018 04:23

Вы включили сюда файл своей модели, приложение / сообщения?

MVS 28.12.2018 04:24

@MVS Я дополню описание вопроса файлом модели

John 28.12.2018 04:35

@ AhmedNourJamalEl-Din ничего не возвращается

John 28.12.2018 04:36

Опубликуйте вывод как img, пожалуйста, потому что он вообще не должен возвращать представление

Ahmed Nour Jamal El-Din 28.12.2018 04:38

Предоставленные вами образцы кода не содержат ошибок, пожалуйста, дважды проверьте поток вашего кода. Может быть, ваш запрос куда-то направлен. Вместо метода getPosts () или может быть.

Raj 28.12.2018 06:21

проверьте свою маршрутизацию, чтобы указать на эту точку зрения

adrianriyadi 28.12.2018 06:23

@John попробуйте добавить protected $table = 'posts'; в класс модели Post.

Jinal Somaiya 28.12.2018 06:28

как вы проверяете с помощью with(), пожалуйста, покажите этот фрагмент

H45H 28.12.2018 08:05
$post->postContent что это за postContent такое поле существует в таблице posts ??
ARUN Madathil 28.12.2018 10:45
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
14
108
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Привет всем, я обнаружил проблему со своим кодом. сначала я включил protected $table = 'posts'; в свой класс модели сообщений, посоветовал @Jinal Somaiya. Затем убедившись, что у меня были правильные маршруты, и включил приведенный ниже код в свою индексную функцию PostsController

   $posts = Posts::all();



   return view('page.profile')->with('posts',$posts);

Приведенный выше оператор foreach в моем описании вопроса верен.

Спасибо за помощь!

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