1

我想从我的视图中的控制器获取数据以在其中一个 div 中使用

我的 TagController 是这样的:

 class TagController extends Controller
{
//
    public function index(){
        $tags = Tag::all();
        return $tags;
    }
}

我的视图包括以下代码来访问它

{{ $tags = new App\Http\Controllers\TagController,
                        $tags->index()
}}

-> 不能使用关键字 use 因为 eloquent 不允许 -> 试图使函数静态并使用 TagController::index() ,给出错误 can't make function static -> 不能使用这个控制器使用该功能进行路由和重定向,因为视图已经链接到另一个控制器并且我不想重新加载如何从控制器使用此功能。对不起这个愚蠢的事情,请帮忙,我是laravel的新手

4

1 回答 1

2

如评论中所述,要在模板文件中实际设置变量,您需要使用正确的刀片标签:

@php
     $tags = new App\Http\Controllers\TagController;

     $tags->index()
@endphp

就目前而言,您正在尝试在echo.

根据文档

在某些情况下,将 PHP 代码嵌入到视图中很有用。您可以使用 Blade @php 指令在模板中执行纯 PHP 块。

然而...

老实说,这不是这样做的理想方式。您应该在另一个视图中访问另一个控制器,实际上您应该按照@kerbholz 在他们的评论中的建议从视图的相应控制器传递变量。

于 2018-10-11T08:21:15.697 回答